首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

k==j==i+5 int i=1,j=2,k=3;该如何解决

2012-05-21 
kji+5int i1,j2,k3如kji+5,根据运算符的左结合性,先计算kj,该式不成立,其值为0,再计算0i

k==j==i+5 int i=1,j=2,k=3;
"如k==j==i+5,根据运算符的左结合性,先计算k==j,该式不成立,其值为0,再计算0==i+5,也不成立,故表达式值为0。"这是书中所说
  请问:不是应该先计算i+5么?然后才是k==j==6运算么?虽然计算结果是一样的!

[解决办法]
这儿的"=="不是赋值语句,而是判断语句。所以不会先算i+5;
k == j == i+5 ===> if((m =(k == j)) && (m == i+5))
m需要提前定义。

热点排行