Post-incrémentation

Définition, exemples et bonnes pratiques

À retenir

  • La valeur originale est utilisée en premier.
  • L'ajout de +1 se fait immédiatement après l'utilisation.
  • S'écrit généralement avec le symbole ++ placé après le nom de la variable.

La post-incrémentation consiste à augmenter la valeur d'une variable de 1, mais seulement après que sa valeur actuelle a été utilisée dans une instruction. C'est comme si vous donniez un ticket numéroté à un client et que vous changiez le numéro sur votre machine pour le client suivant uniquement après avoir fini avec le premier.

Étymologie

Issu du latin post (signifiant « après ») et du mot « incrémentation » (action d'ajouter une unité). En informatique, cela désigne le placement de l'opérateur après la variable (exemple : i++).

Exemples d'usage

  • Dans une boucle for en JavaScript : for (let i = 0; i < 10; i++).
  • En langage C : si x = 5, l'instruction y = x++ donnera y = 5 et x = 6.

Cas d'usage

On l'utilise principalement dans les boucles de répétition pour passer à l'élément suivant, ou lors de la lecture d'un tableau où l'on souhaite récupérer l'élément à l'indice actuel avant de décaler le curseur pour la suite.

Bonnes pratiques

Évitez d'utiliser la post-incrémentation au sein d'expressions mathématiques très complexes sur une même ligne, car cela peut rendre le code difficile à lire et induire des erreurs de logique sur le moment exact où la variable change de valeur.

Synonymes

incrémentation postfixée auto-incrémentation

Antonymes

pré-incrémentation post-décrémentation

Conseil

Pour bien débuter, retenez simplement que le ++ placé après signifie : « utilise-moi maintenant, change-moi juste après ».

Questions fréquentes

Quelle est la différence entre i++ et ++i ?

Avec i++ (post), on utilise la valeur puis on ajoute 1. Avec ++i (pré), on ajoute 1 puis on utilise la nouvelle valeur.

Est-ce que cela fonctionne avec d'autres chiffres que 1 ?

Non, l'incrémentation (pré ou post) est spécifiquement dédiée à l'ajout d'une unité unique (1).