De l'incrémentation en C...
Par Contributeur - Publié le
L'opérateur d'incrémentation est un opérateur C fort utile et pourtant assez mal compris des débutants. En effet on dit souvent que les deux expressions p++ et p = p + 1 sont équivalentes. Ce n'est pas tout à fait exact:
On peut ensuite utiliser cet opérateur de deux façons: écriture préfixée ou postfixée. Dans les deux cas la variable est incrémentée mais dans le premier cas l'incrémentation se fait avant de renvoyer la valeur de la variable. Dans le second c'est évidemment après. Ainsi en posant int i=0;, ++i vaut 1 alors que i++ vaut 0 (mais la valeur de i vaut 1 pour la suite du programme).
Rien de bien compliqué donc mais bien utile à savoir...
++fait plus qu'incrémenter la variable, il renvoie son contenu, ce qui permet de l'utiliser au beau milieu d'expressions. Par exemple si p est un
char *, putchar([p++) est tout à fait valable.
On peut ensuite utiliser cet opérateur de deux façons: écriture préfixée ou postfixée. Dans les deux cas la variable est incrémentée mais dans le premier cas l'incrémentation se fait avant de renvoyer la valeur de la variable. Dans le second c'est évidemment après. Ainsi en posant int i=0;, ++i vaut 1 alors que i++ vaut 0 (mais la valeur de i vaut 1 pour la suite du programme).
Rien de bien compliqué donc mais bien utile à savoir...