Post-Inkrement/Dekrement
Teil des Abschnitts Grundlagen der C++-Journey von Coddy — Lektion 19 von 74.
In der vorherigen Lektion haben wir die Inkrement- (++) und Dekrement-Operatoren (--) behandelt. Diese Operatoren haben zwei Formen: Präfix und Postfix.
Die Präfix-Form wird vor der Variablen geschrieben (z. B. ++x oder --x), und die Postfix-Form wird nach der Variablen geschrieben (z. B. x++ oder x--).
Zu wissen, welche Form man verwendet, ist in der Praxis wichtig. Zum Beispiel könnten Sie in einem Spiel den Punktestand eines Spielers mit score++ nach jedem Treffer verfolgen, oder --lives verwenden, um ein verlorenes Leben sofort widerzuspiegeln, bevor geprüft wird, ob das Spiel vorbei ist. In Schleifen kann die Wahl zwischen Präfix und Postfix beeinflussen, welcher Wert in einem Ausdruck vor oder nach der Aktualisierung verwendet wird.
Der Unterschied zwischen den beiden Formen ist subtil, aber wichtig:
- Präfix-Form: Inkrementiert/dekrementiert die Variable und gibt dann den neuen Wert zurück.
- Postfix-Form: Gibt den aktuellen Wert der Variable zurück und inkrementiert/dekrementiert sie dann.
Hier ist ein Beispiel, um den Unterschied zu verdeutlichen:
int x = 5;
int y = x++;
// y = 5, x = 6 (Postfix: y erhält den ursprünglichen Wert, dann wird x inkrementiert)
int a = 5;
int b = ++a;
// b = 6, a = 6 (Präfix: a wird zuerst inkrementiert, dann erhält b den neuen Wert)Im ersten Fall wird y der ursprüngliche Wert von x (5) zugewiesen, und dann wird x auf 6 erhöht. Im zweiten Fall wird a zuerst inkrementiert, und dann wird sein neuer Wert (6) b zugewiesen.
Die gleiche Logik gilt für den Dekrement-Operator:
int x = 5;
int y = x--;
// y = 5, x = 4 (Postfix: y erhält den ursprünglichen Wert, dann wird x dekrementiert)
int a = 5;
int b = --a;
// b = 4, a = 4 (Präfix: a wird zuerst dekrementiert, dann erhält b den neuen Wert)Aufgabe
AnfängerIhnen wird ein Code mit Initialisierungen von x, y und z gegeben. (Löschen Sie diese Zeilen nicht!)
Ihre Aufgabe ist es, die Inkrement-/Dekrement-Operatoren zu verwenden, um die folgenden Operationen in dieser Reihenfolge durchzuführen:
- Verwenden Sie den Postfix-Inkrement-Operator, um den aktuellen Wert von
xanazuzuweisen und dannxzu inkrementieren. - Verwenden Sie den Präfix-Dekrement-Operator, um
yzu dekrementieren und seinen neuen Wert anbzuzuweisen. - Verwenden Sie den Postfix-Dekrement-Operator, um den aktuellen Wert von
zanczuzuweisen und dannzzu dekrementieren.
Geben Sie nach der Durchführung dieser Operationen die Werte von a, b, c, x, y und z in folgendem Format auf der Konsole aus:
a: [value of a]
b: [value of b]
c: [value of c]
x: [value of x]
y: [value of y]
z: [value of z]Probier es selbst
#include <iostream>
int main() {
int x = 10;
int y = 20;
int z = 30;
int a, b, c;
// Schreibe deinen Code unten
// Die folgenden Zeilen nicht ändern
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;
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorInkrement/DekrementPost-Inkrement/DekrementArithmetische AbkürzungenVergleichsoperatorenString-Vergleich7Eingabe/Ausgabe Grundlagen
cout-Anweisungcin-AnweisungString-EingabeWiederholung - Bis 120Wiederholung - Wahr oder Falsch3Variablen Teil 2
TypdeklarationNamenskonventionenWiederholung – Variablen initialisierenType Casting Teil 1Type Casting Teil 26Entscheidungsfindung
If-AnweisungIf - ElseSwitch-AnweisungBedingter OperatorWiederholung - If ElseVerschachtelte If - Else