Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing"
La nuova Insta360 X6 introduce sensori Sony da 1/1.1" e un SoC Triple AI a 4nm. Analizziamo le riprese 8K, il primo Dolby Vision nativo a 10-bit nel settore sferico e l'innovativo flusso di lavoro diretto sulla futura versione 22 di DaVinci Resolve.
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli
Dopo due settimane trascorse al volante della Dacia Spring 2026 possiamo raccontarvi tutto, dalle novità di motore e batteria, fino ai consumi in tutti le situazioni, compresa l'autonomia reale ad alta velocità
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre
Abbiamo messo alla prova la nuova AORUS GeForce RTX 5080 INFINITY WOOD 16G, una delle interpretazioni più particolari della GPU NVIDIA Blackwell. Prestazioni, frequenze operative, temperature, consumi e margini di overclock sono stati confrontati con altre RTX 5080 custom e con la Founders Edition. Il design in legno è solo uno degli elementi distintivi di una scheda che punta a ritagliarsi uno spazio nella fascia più alta del mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 04-07-2006, 06:49   #1
NA01
Senior Member
 
L'Avatar di NA01
 
Iscritto dal: Jun 2003
Città: Genova
Messaggi: 5676
[c] ma queste righe non sono uguali?

stavo riguardando uno dei primi esercizi di uno dei corsi dell'università. robbbbba facile, e poi io sono beccio, quell'esame me lo sono mangiato... mmmmmmmh.. forse no, mi sono venuti dei dubbi
la linea dell'umiliazione è questa

Codice:
    mq->lg=((mq->lg+1)%MAX);
ooooookey!
data mq un puntatore a struttura perfettamente allocata nella mia mente doveva sommarci uno, farci un banale modulo 16 (è questo che vale MAX) e riassegnarlo a lg....
nono, col cavolo che lo fa!
alemeno non su quel codice...

però lo fa questa linea...
Codice:
     mq->lg++ % MAX;
che non avrei mai scritto non sapendo dove è che avviene l'assegnazione.
ok, al di là che l'ultima opzione non mi sarei nemmeno sognato di scriverla non capisco che differenza ci sia tra le due righe....

sapete illuminarmi?

ciao ciao!
NA01 è offline   Rispondi citando il messaggio o parte di esso
Old 04-07-2006, 09:05   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Entrambe le istruzioni sono corrette sintatticamente ma ... il risultato è molto differente.
Codice:
mq->lg=((mq->lg+1)%MAX);
Questa espressione funziona proprio come ci si aspetta (non capisco perché dici che non funziona ). Per prima cosa calcola mq->lg più 1, poi ne calcola il modulo 16 e il risultato lo riassegna in mq->lg. Questo vuol dire che mq->lg può valere al massimo 15 e se prima della espressione vale 15, fa il "rollover" e riparte da 0. Questa, in sintesi è la logica di funzionamento.

Codice:
mq->lg++ % MAX;
Questa invece non è una assegnazione. Attenzione: viene prima calcolato il modulo mq->lg % MAX e poi solo dopo viene incrementato mq->lg. Non è un comportamento strano! È dovuto al post-incremento che viene eseguito solo dopo che è stata usata la variabile.
Il risultato del modulo però non va a finire in mq->lg (perché non è una assegnazione) ma va a finire nel risultato della espressione. Messa così una espressione ... non serve a niente, perché il risultato del modulo ... si "perde".

Supponiamo di avere il seguente codice (supponiamo che lg sia un intero):
Codice:
mq->lg = 14;

printf ("espr:   %d\n", mq->lg++ % MAX);
printf ("mq->lg: %d\n", mq->lg);

printf ("espr:   %d\n", mq->lg++ % MAX);
printf ("mq->lg: %d\n", mq->lg);

printf ("espr:   %d\n", mq->lg++ % MAX);
printf ("mq->lg: %d\n", mq->lg);

printf ("espr:   %d\n", mq->lg++ % MAX);
printf ("mq->lg: %d\n", mq->lg);
Questo codice stamperebbe:
Codice:
espr:   14
mq->lg: 15
espr:   15
mq->lg: 16
espr:   0
mq->lg: 17
espr:   1
mq->lg: 18
Come vedi, mq->lg viene sempre incrementato (dopo l'uso della espressione) e il risultato della espressione, invece di "perdersi" va a finire nel parametro della printf.

Spero di essere stato chiaro, naturalmente.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Insta360 X6: Dolby Vision, 8K e montaggio "Zero Editing" Insta360 X6: Dolby Vision, 8K e montaggio "...
Due settimane con Dacia Spring 2026: novità, consumi, autonomia reale e test bagagli Due settimane con Dacia Spring 2026: novit&agrav...
AORUS GeForce RTX 5080 INFINITY WOOD 16G: una scheda video diversa dalle altre AORUS GeForce RTX 5080 INFINITY WOOD 16G: una sc...
Hyundai Ioniq 9: dopo due settimane di test non avremmo voluto restituirla Hyundai Ioniq 9: dopo due settimane di test non ...
LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e Dual Mode LG UltraGear evo GM9: 27 pollici, 5K, Mini LED e...
La beta di iOS 27 conferma i rumor, Appl...
HONOR esagera, il prossimo smartphone av...
L'edizione speciale della Switch 2 per i...
Taiwan, il primo attacco hacker AI auton...
The Lord of the Rings: War in the North ...
I prezzi delle RTX 50 continuano ad aume...
La prossima crisi riguarderà i pannelli ...
Terabyte di dati trafugati: un attacco a...
Volo Delta 591, spunta un Wi-Fi che imit...
La scienziata lancia l'allarme: l'intell...
BYD Denza N8 e la super batteria: 130 kW...
Trump autorizza le aziende private a hac...
Password deboli e finti SMS: così i crim...
Non è fatta di materia, eppure ha...
Loop completo in un tunnel, la Voyah Pas...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 17:48.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v