zhumengyun 发表于 2014-11-6 19:00:53

优先级问题

int i=1;
0&&++i&&1运算后i=1
1&&++i&&1运算后i=2
由此我推想1&&3-1&&1等价于(1&&3)-1&&1结果应该为0,但事实上等价于1&&(3-1)&&1,结果是1,为什么

fireofsun 发表于 2014-11-6 20:48:34

你确定你想的是对的吗?+、-运算符优先级为6级,&&优先级为13级,明显是先加减后逻辑与啊

fireofsun 发表于 2014-11-6 20:50:44

顺便说一句,自增运算符++优先级为3级,更高,之所以第一个表达式中的++没运算,是因为&&的前面是0,后面的运算全部被短路了
页: [1]
查看完整版本: 优先级问题