Diese Seite ist auch in 2 anderen Sprachen verfügbar.

if

[Control Structure]

Beschreibung

Das if-Statement checkt, ob eine Bedingung true ist und führt dann den Code aus, der innerhalb der Klammern steht.

Syntax

if (condition) {
  //statement(s)
}

Parameter

condition: Ein Booleanausdruck, kann true oder false sein.

Rückgabewert

Nichts.

Beispielcode

Die Klammern nach einem if-Statement können weggelassen werden. Wenn dies getan wird, wird die nächste Zeile die einzige, die nach der Bedingung ausgeführt wird.

if (x > 120) {
  digitalWrite(LEDpin, HIGH);
}

if (x > 120) {
  digitalWrite(LEDpin, HIGH);
}

if (x > 120) {
  digitalWrite(LEDpin, HIGH);
}

if (x > 120) {
  digitalWrite(LEDpin1, HIGH);
  digitalWrite(LEDpin2, HIGH);
}
// Alle Anweisungen sind korrekt

Anmerkungen und Warnungen

Die Statements in der condition müssen dabei mindestens einen der Operatoren unten benutzen.

Vergleichsoperatoren:

x == y (x ist gleich y)
x != y (x ist nicht gleich y)
x <  y (x ist kleiner als y)
x >  y (x ist größer als y)
x <= y (x ist kleiner als oder gleich zu y)
x >= y (x ist größer als oder gleich zu y)

Achtung: Nicht zufällig ein einzelnes =-Zeichen in der Bedingung verwenden (z.B. if (x = 10)). Ein einfaches =-Zeichen ist ein Zuweisungsoperator und setzt x auf 10. Benutze stattdessen == (z.B. if (x == 10)). Dies vergleicht die Werte von x und der Konstante 10. Das 2. Beispiel wird nur true, wenn x genau gleich 10 ist, das 1. Statement wird immer true.

Das passiert, weil C++ wie folgt evaluiert: 10 wird auf x zugewiesen (= ist der Zuweisungsoperator), weshalb x nun den Wert 10 enthält. Daraufhin evaluiert die If-Bedingung zu 10. 10 ist immer true, da jede Zahl, die nicht 0 ist, immer true ist. Dies ist meistens nicht erwünscht, also bitte darauf achten.

Siehe auch