你那个是先根据运算符的优先级,等于号是大于逗号,所以一赋值给a,假如你123用小括号括住,然后我三就赋值给a了,这是一道关于运算符优先级的问题,希望能给您帮助
你好,参考代码
```c
#include<stdio.h>
int main(){
int a;
a = (1,2,3);//括号改变运算优先级
printf("%d",a);
return 0;
}
运行结果如图
1、=号的优先级大于,号
2、第一次a=1时,这个表达式的赋值已经结束,所以输出打印就是1,如果想要等于3的话,需要把数字放在一个总体中
这个表达式是这样的
a=1,
2,
3,
这是优先级问题逗号表达式优先级比赋值低