C Handbuch bestellen

Das C Tutorial (deutsch)

Verzweigungen

Bedingungs-Operator

Für manche Fälle eignet es sich, eine Kurzschreibweise der if else Anweisung zu verwenden. Zum Beispiel, wenn die Zuweisung eines Wertes von einem Vergleich abhängig ist.

Hier wollen wir z.B. zwei Werte vergleichen und den größeren zuweisen:

int a=3, b=5, max;

if(a > b) {
	max = a;
}else {
	max = b;
}

printf("Maximum: %d\n", max);
Maximum: 5

Diese if else Anweisung können wir durch den Bedingungs-Operator ersetzen, welcher nur eine Zeile benötigt.

int a=3, b=5, max;

max = (a > b)?a:b;

printf("Maximum: %d\n", max);

In die Klammern schreiben wir den Vergleich bzw. die Bedingung. Darauf folgt ein Fragezeichen ? und der Teil, der ausgeführt wird, wenn die Bedingung wahr ist. Mit dem Doppelpunkt : leiten wir den Alternativ-Teil (else) ein.