关于逗号运算符
小甲鱼在第二章数据类型,逗号运算符讲解有错吧,#include<stdio.h>
void main ()
{
int a = 2, b = 4, c = 6, x,y;
y = (x=a+b),(b+c);
printf("y=%d\nx=%d\n",y,x);
}
运行结果Y值是表达式1的值不是表达式2的值啊? 肯定没好好听课...逗号运算符的优先级是比赋值运算符要低的哦,即这里是先进行赋值运算。
所以代码中写法等价于:
(y = (x = a + b)), (b + c);
页:
[1]