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.
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.