Komma-Operator
Nach oben zu Binäre Operatoren - Index
Syntax
Ausdruck , Zuweisungs-Ausdruck
Bemerkungen
Das Komma trennt die Elemente einer Liste von Funktionsargumenten.
Außerdem wird das Komma auch als Operator in Kommaausdrücken verwendet. Es ist zulässig, diese beiden Verwendungsarten zu mischen, aber es müssen dann Klammern zur Klarstellung gesetzt werden.
Der linke Operand E1
wird als void-Ausdruck ausgewertet. Danach wird E2
ausgewertet und liefert den Wert und den Typ des Kommaausdrucks. Dies kann auch rekursiv geschehen; bei dem Ausdruck
E1, E2, ..., En
wird von links nach rechts jeder Einzelausdruck Ei
ausgewertet, und der Wert und der Typ von En
liefern das Ergebnis des gesamten Ausdrucks.
Zur Vermeidung von Mehrdeutigkeiten bei der Verwendung von Kommas in Funktionsargument- oder Initialisierer-Listen müssen Klammern eingesetzt werden. Zum Beispiel wird mit der Anweisung:
func(i, (j = 1, j + 4), k);
die Funktion func mit drei Argumenten (i, 5, k)
, nicht mit vier, aufgerufen.