3.8.5 “,”运算符

“,”运算符是把几个表达式串在一起,并用括号括起来,按照顺序从左向右计算的运算符。“,”运算符左侧表达式的值不作为返回值,只有最右侧表达式的值作为整个表达式的返回值。程序示例如下。


include<stdio.h>//头文件

void main()//主函数

{

int a,b,c;//定义变量

a=37;//赋值

b=179;

c=(a++,++b,b+a);//执行“,”运算符,为c赋值

printf(“c=%d\n”,c);//输出结果

}


该程序可在KeilµVision3集成开发环境中运行,执行结果如下。


c=218


本例中首先执行a++,a自增1,然后执行++b,b自增1,最后执行b+a,并将结果赋给变量c。

技巧逗号运算符可以将多个表达式串联起来,从而构成语法上的“一个”表达式。这在语法上要求出现“一个”表达式时很有用(如for语句中的初始化、判断、改变循环变量这三部分都只能出现一个表达式,这时,就可使用逗号表达式来进行多个变量的赋值和运算操作)。但需要注意,一般不是特别需要,不建议读者滥用逗号表达式,因为其最终结果初学者不好确认,应用程序容易出现不易查找的错误。