Autoincremento e autodecremento
Nei linguaggi di programmazione C, C++, Java e C#, l'autoincremento (autodecremento) è il valore che assume una variabile dato dalla somma tra sé stessa e +1 (-1).
Dato un esempio:
int a; // con "a" variabile di tipo intero a = a + 1; // è l'autoincremento a = a - 1; // è l'autodecremento
La prima operazione, equivale a scrivere:
a++; // versione suffisso ++a; // versione prefissa
mentre la seconda operazione equivale a scrivere:
a--; // versione suffisso --a; // versione prefissa
Le 2 versioni prefisso e suffisso non sono in generale equivalenti. Ad esempio, se queste compaiono in costrutti condizionali:
- nel primo caso, prima viene fatto l'incremento e poi viene valutata l'espressione;
- nel secondo caso, prima viene valutata l'espressione, e poi viene incrementata.
Questa sintassi usualmente viene utilizzata nei cicli for e while, che permettono il ripetersi iterativamente di una o più istruzioni con il soddisfacimento di alcune condizioni imposte dal programmatore.
In C e C++, l'autoincremento può essere usato anche per sfruttare l'aritmetica dei puntatori oppure per passare da un elemento al successivo in una collezione di elementi mediante un iteratore.