Bedingte Ausdrücke


Für die if ... else ... Anweisung gibt es eine Kurzform.

Sehen Sie sich das folgende Beispiel an.

Beispiel 1 Beispiel 2

  if ( x == 1 ) 
    y = 10;
  else
    y = 20;
    

  y = (x == 1) ? 10 : 20;  

Beide Beispiele machen das gleiche. Wenn x gleich 1 ist, dann wird y auf 10 gesetzt, sonst wird y auf 20 gesetzt. Im Beispiel rechts wird der erste Ausdruck ausgewertet   '(x ==1 )' und wenn er 'wahr' ist,  wird der nächste Ausdruck ausgewertet und y auf  '10' gesetzt. Ansonsten erhält y den Wert 20. Noch ein weiteres Beispiel:

Beispiel 1 Beispiel 2

 if ( x == 1 ) 
   puts("take car"); 
 else
   puts("take bike");  

 (x == 1) ? puts("take car") : puts("take bike"); 
                                                  
    or

 puts( (x == 1) ? "take car" : "take bike");

Man geht davon aus, daß ein Compiler aus  bedingten Anweisungen effektiveren Maschinencode erzeugen kann.  Im Beispiel 2 wird deutlich, daß sich dabei die Lesbarkeit des Programmes verschlechtert. Sie sollten deshalb diese Anweisung umsichtig verwenden und sich im Zweifelsfall für bessere Lesbarkeit und höhere Zuverlässigkeit entscheiden.


Siehe auch:


Anfang Hauptindex Schlüsselwörter Funktionen

Übers.: G. Junghanns