C-Programmierung

Bedingte Bewertung

Komma Operator | | Operator Priorität

Die bedingte Bewertung ist ein Ausdruck der Form

condition ? expression1 : expression2

In Abhängigkeit von der angegebenen Bedingung vor dem Fragezeichen wird jeweils eine von zwei alternativen Ausdrücken, die durch einen Doppelpunkt getrennt sind, ausgewertet.

Ist die Bedingung erfĂĽllt, d.h. ergibt die Auswertung der Bedingung ‘wahr’, so wird der linke Ausdruck ausgewertet. Andernfalls wird die rechte Alternative ausgewertet. Der Wert des Geamtausdrucks entspricht dem jeweils ausgewerteten Ausdruck.

Beispiel:

a<b?a:b

Die Operatoren ? und : haben eine sehr niedrige Priorität. Nur die Zuweisung und der Komma Operator haben eine niedrigere Priorität. Somit ist eine explizite Klammerung eigentlich nicht notwendig, erhöht aber die Lesbarkeit:

(a<b)? a:b
(a<b? a : b)

Die bedingte Bewertung ist der einzige Operator, der drei Operanden besitzt.

Komma Operator | | Operator Priorität

Options: