Sabemos del tema anterior que estas dos expresiones son equivalentes:a++a = a + 1
Sin embargo, esto no es del todo cierto. En el momento de querer guardar de esta forma el incremento de a en otra variable distinta, nos pasará esto:
Partiendo de que a = 4 y b = 1b = a++b == 4a == 5
Esto significa que b = a++ guardará el valor que tenía a antes de incrementar 1, y a incrementará después su valor. A esto se le llama postincremento.
Si queremos guardar en b el incremento de otra variable, tendremos que usar un preincremento.b = ++ab == 5a == 5
Aquí estamos primero incrementando el valor de a en 1, y luego lo guardamos en b, quedando ambos valores igual.
En resumen, para ver las diferencias entre postincremento (a++) y preincremento (a–):
| Intrucción | Orden |
|---|---|
| b = a++ | Primero asigna a b y luego incrementa a |
| b = ++a | Primero incrementa a y luego asigna a b |
Parece una tontería, pero es importante entender estas dos diferencias en un futuro.