在C语言中,逗号可以将多个表达式分隔开来。其中,用逗号分隔的表达式被分别计算,并且整个表达式的值都是最后一个表达式的值。
逗号表达式成为顺序求值运算符,一般形式如下:
表达式1,表达式2,…,表达式n;
逗号表达式的求解过程为:先求解表达式1,再求解表达式2,一直求解到表达式n。整个逗号表达式的值是表达式n的值。
下面观察使用逗号运算符的代码:
Value=2+5,1+2,5+7;
上面的语句中,Value的值为7,而不是12,这是因为赋值运算符的优先级高于逗号运算符。因此要先执行赋值的运算。如果要先执行逗号运算,则可以使用括号运算符,如
Value=(2+5,1+2,5+7);
使用括号后,Value的值为12。