scrivere
for (i=n ; i<a; i++)
oppure
for (i=n ; i<a; i++)
è la stessa cosa?
scrivere
for (i=n ; i<a; i++)
oppure
for (i=n ; i<a; i++)
è la stessa cosa?
Per come l'hai scritto: si.
forse intendevi:
rimane comunque la stessa cosa in questo contesto.Codice PHP:for(i=n ; i < a ; ++i)
Le notazioni postfisse e prefisse sono in qualsiasi testo di C.
Come mai questo dubbio?
si esattamente quello che pensavo
è che non mi ricordavo bene quando il puntatore viene incrementato
avevo il dubbio che scrivendo i++, il puntatore venga incrementato alla fine del ciclo
mentre scrivendo ++i venga incrementato all'inizio del ciclo
mi sbagliavo
grazie
Ma di quale puntatore parli?
No MP tecnici (non rispondo nemmeno!), usa il forum.
mi sono dimenticato di mettere l'esempio completo, scusate, io intedevo dire
se ho un vettore di stutture chiamato vett_str, voglio ad esempio accedere al campo qta di ogni strutture con un for
for (i=0; i<n; i++){ vett_str[i].qta;}
for (i=0; i<n; ++i){ vett_str[i].qta;}
io pensavo che nel secondo caso saltassi l'elemento vett_str[0], mentra da quanto dettomi prima sono quivalent, era questa la domanda, è che ho malditesta e quindi non ho scritto bene la domanda (12 ore di universita...)
Beh ... e quindi NON c'e' un puntatore ... i e' una variabile intera usata come indice di un array ... c'e' differenza ...
No MP tecnici (non rispondo nemmeno!), usa il forum.
vero, è che al momento non conneto, cmq il concetto che volevo capire è lo stesso
i++ e ++i hanno effetti differenti nel momento in cui le usi in espressioni, perchè la prima restituisce i e poi lo incrementa mentre la seconda incrementa i e poi restituisce il valore incrementato.
Nel ciclo for che hai mostrato semplicemente rappresentano istruzioni a se stanti quindi non c'è differenza.
![]()
GreyFox (Linux registered user #435102)
greyfox.imente.org - GreyFox's shots (photo gallery)
$ cd /pub
$ more beer
esempio pratico
int a = 5;
arr[a++] = 7;
(qui accede ad arr[5])
arr[a] = 8;
(a e' incrementata e qui accede ad arr[6])
------------------------------
int a = 5;
arr[++a] = 7;
(qui accede ad arr[6])
arr[a] = 8;
(anche qui accede ad arr[6])