Post-incrémentation / Post-décrémentation
Fait partie de la section Fondamentaux du Journey C++ de Coddy — leçon 19 sur 74.
Dans la leçon précédente, nous avons abordé les opérateurs d'incrémentation (++) et de décrémentation (--). Ces opérateurs ont deux formes : préfixe et postfixe.
Savoir quelle forme utiliser est important dans les programmes réels — par exemple, lors du suivi d'un score de jeu, du comptage des itérations d'une boucle ou de la progression dans une liste d'éléments.
La forme préfixée s'écrit avant la variable (par ex. ++x ou --x), et la forme postfixée s'écrit après la variable (par ex. x++ ou x--).
La différence entre les deux formes est subtile mais importante :
- Forme préfixée : Incrémente/décrémente la variable puis retourne la nouvelle valeur.
- Forme postfixée : Retourne la valeur actuelle de la variable puis l'incrémente/la décrémente.
Voici un exemple pour illustrer la différence :
int x = 5;
int y = x++;
// y = 5, x = 6 (postfixe)
int a = 5;
int b = ++a;
// b = 6, a = 6 (préfixe)Dans le premier cas, y reçoit la valeur d'origine de x (5), puis x est incrémenté à 6. Dans le second cas, a est d'abord incrémenté, puis sa nouvelle valeur (6) est attribuée à b.
La même logique s'applique à l'opérateur de décrémentation :
int x = 5;
int y = x--;
// y = 5, x = 4 (postfixe)
int a = 5;
int b = --a;
// b = 4, a = 4 (préfixe)Défi
DébutantOn vous donne un code avec les initialisations de x, y, et z. (Ne supprimez pas ces lignes !)
Votre tâche consiste à utiliser les opérateurs d'incrémentation/décrémentation pour effectuer les opérations suivantes, dans cet ordre :
- Utilisez l'opérateur d'incrémentation postfixe pour affecter la valeur actuelle de
xàa, puis incrémentezx. - Utilisez l'opérateur de décrémentation préfixe pour décrémenter
yet affecter sa nouvelle valeur àb. - Utilisez l'opérateur de décrémentation postfixe pour affecter la valeur actuelle de
zàc, puis décrémenterz.
Après avoir effectué ces opérations, affichez les valeurs de a, b, c, x, y, et z dans la console au format suivant :
a: [value of a]
b: [value of b]
c: [value of c]
x: [value of x]
y: [value of y]
z: [value of z]Aide-mémoire
Les opérateurs d'incrémentation (++) et de décrémentation (--) ont deux formes :
- Forme préfixée (
++x,--x) : incrémente/décrémente d'abord la variable, puis retourne la nouvelle valeur - Forme postfixée (
x++,x--) : retourne d'abord la valeur actuelle, puis incrémente/décrémente la variable
Exemples :
int x = 5;
int y = x++; // y = 5, x = 6 (postfixée)
int a = 5;
int b = ++a; // b = 6, a = 6 (préfixée)
int x = 5;
int y = x--; // y = 5, x = 4 (postfixée)
int a = 5;
int b = --a; // b = 4, a = 4 (préfixée)Essayez vous-même
#include <iostream>
int main() {
int x = 10;
int y = 20;
int z = 30;
int a, b, c;
// Tapez votre code ci-dessous
// Ne modifiez pas les lignes ci-dessous
std::cout << "a: " << a << std::endl;
std::cout << "b: " << b << std::endl;
std::cout << "c: " << c << std::endl;
std::cout << "x: " << x << std::endl;
std::cout << "y: " << y << std::endl;
std::cout << "z: " << z << std::endl;
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur moduloIncrémentation / DécrémentationPost-incrémentation / Post-décrémentationRaccourcis arithmétiquesOpérateurs de comparaisonComparaison de chaînes7Bases des entrées/sorties
Instruction coutInstruction cinSaisie de chaînes de caractèresRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux3Variables - Partie 2
Déclaration de typeConventions de nommageRécapitulatif - Initialisation des variablesType Casting - Partie 1Type Casting - Partie 26Prise de décision
L'instruction IfIf - ElseL'instruction SwitchOpérateur conditionnelRécapitulatif - If ElseIf - Else imbriqués