Go Up to Binary Operators Index
expression , assignment-expression
The comma separates elements in a function argument list.
The comma is also used as an operator in comma expressions. Mixing the two uses of comma is legal, but you must use parentheses to distinguish them.
The left operand
E1 is evaluated as a void expression, then
E2 is evaluated to give the result and type of the comma expression. By recursion, the expression
E1, E2, ..., En
results in the left-to-right evaluation of each
Ei, with the value and type of
En giving the result of the whole expression.
To avoid ambiguity with the commas in function argument and initializer lists, use parentheses. For example,
func(i, (j = 1, j + 4), k);
calls func with three arguments
(i, 5, k), not four.