关于逻辑函数与顺序的 问题
int x = 2,y = 2,z = 0,a;a = ++x || ++ y && z++;
printf("%d,%d,%d\n",x,y,z);
执行后的输出结果为:
a: 2,2,0
b:3,3,1
c:3,2,0
d:3,2,1
答案为C
求教教。。我很不明白为什么y,z的值不变 我之前看过有人回答说“由于++x,故x的值变为3。由于判定了++x为真,对于或运算不再继续判断。故y,x的值不变”
但是不是说逻辑运算符&&比||高级吗? 怎么会先实行||