Menu
Coddy logo textTech

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 Dekrementoperatoren (--) behandelt. Diese Operatoren haben zwei Formen: Präfix und Postfix.

Die Präfixform wird vor der Variable geschrieben (z. B. ++x oder --x), und die Postfixform wird nach der Variable geschrieben (z. B. x++ oder x--).

Zu wissen, welche Form du verwenden solltest, ist in der Praxis wichtig. In einem Spiel könntest du beispielsweise den Punktestand eines Spielers nach jedem Treffer mit score++ verfolgen oder --lives verwenden, um ein verlorenes Leben sofort widerzuspiegeln, bevor du prüfst, 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äfixform: Erhöht/verringert die Variable und gibt dann den neuen Wert zurück.
  • Postfixform: Gibt den aktuellen Wert der Variable zurück und erhöht/verringert sie dann.

Hier ist ein Beispiel, um den Unterschied zu veranschaulichen:

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 (prefix: 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 anschließend wird x auf 6 erhöht. Im zweiten Fall wird a zuerst erhöht, und anschließend wird sein neuer Wert (6) b zugewiesen.

Dieselbe Logik gilt für den Dekrementoperator:

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 (prefix: a wird zuerst dekrementiert, dann erhält b den neuen Wert)
challenge icon

Aufgabe

Anfänger

Dir ist ein Code mit Initialisierungen von x, y und z gegeben. (Lösche diese Zeilen nicht!)

Deine Aufgabe ist es, die Inkrement-/Dekrementoperatoren zu verwenden, um die folgenden Operationen in dieser Reihenfolge auszuführen:

  1. Verwende den Postfix-Inkrementoperator, um den aktuellen Wert von x a zuzuweisen, und erhöhe anschließend x.
  2. Verwende den Präfix-Dekrementoperator, um y zu verringern, und weise seinen neuen Wert b zu.
  3. Verwende den Postfix-Dekrementoperator, um den aktuellen Wert von z c zuzuweisen, und verringere anschließend z.

Gib nach der Ausführung dieser Operationen die Werte von a, b, c, x, y und z in der folgenden Form in 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]
ERFORDERLICHES AUSGABEFORMAT: [Dein übersetzter Inhalt hier]

Probier es selbst

#include <iostream>

int main() {
    int x = 10;
    int y = 20;
    int z = 30;
    
    int a, b, c;
    
    // Gib deinen Code unten ein
    
    
    // Ändere die Zeilen unten nicht
    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;
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-C++-Compiler