C语言的条件运算RT 当a=0时a=a+3,a+4可以解释为先a+3=3,然后a+4=7,所以答案a=7.那当a=3,b=4时,c=(a,b)为什么在VC6.0上答案是4呢?不是应该a+b=7吗?

来源:学生作业学帮网 编辑:学帮网 时间:2024/04/28 23:28:47

C语言的条件运算
RT 当a=0时a=a+3,a+4可以解释为先a+3=3,然后a+4=7,所以答案a=7.那当a=3,b=4时,c=(a,b)为什么在VC6.0上答案是4呢?不是应该a+b=7吗?

这个叫逗号运算.a=a+3,a+4 因为没有括号,所以a的结果是3,后面的a+4并没有赋值语句啊,他不是a=a+4,但是a=a+3,a+4整句的值是7.c=(a,b) 有括号,逗号运算会取a、b中最后一次运算的结果b,所以c就是4了