Der Oder-Operator

Mit dem || Operator werden Ausdrücke mit dem logischen ODER verknüpft. Der Operator liefert dann "wahr", wenn einer der beiden Operanden logisch wahr ist.

Beispiel:

int x;
x = 1;
if ((x > 0) || (x == 0))
   { printf("x ist größer oder gleich 0"); }
else
   { printf("x ist kleiner als 0"); }

Der linke Ausdruck (x > 0) ergibt nur dann falsch, wenn x eine negative Zahl ist. In diesem Fall muss der rechte Operand ausgewertet werden. Er entscheidet das Gesamtergebnis. Da das x auf logisch Null - also falsch - gesetzt wird, ergibt das Gesamtergebnis auch 0, d.h. falsch.

Im anderen Fall, wenn der linke Ausdruck bereits 1 liefert, also x einen Wert größer Null hat, ist das Gesamtergebnis des Ausdrucks gleich 1. Dann braucht der rechte Ausdruck nicht mehr ausgewertet werden. Die Überprüfung x==0 findet nicht mehr statt.