mikroC - C Compiler for Microchip PIC microcontrollers
mikroC
making it simple...
Binary operator comma (,) has the lowest precedence and associates from left to right, so that a, b, c is same as (a, b), c. This allows us to write sequences with any number of expressions:
expression_1, expression_2, ... expression_n;
this results in the
For example:
result = (a = 5, b /= 2, c++);
/* returns preincremented value of variable c, but also intializes a, divides b by 2, and increments c */
result = (x = 10, y = x + 3,
and also computes x and y */
Note
Do not confuse comma operator (sequence operator) with the comma punctuator which separates elements in a function argument list and initializator lists. Mixing the two uses of comma is legal, but you must use parentheses to distinguish them.
To avoid ambiguity with the commas in function argument and initializer lists, use parentheses. For example,
func(i, (j = 1, j + 4), k);
calls function func with three arguments (i, 5, k), not four.
page |
|
114 | MikroElektronika: Development tools - Books - Compilers |
|