a=1,b=2,c=3,d=4,e=5,f=6,g=7,则m=a>b?e:d>e?f:g后,m=7. 为什么啊?求高手!!

[复制链接]
查看11 | 回复4 | 2012-5-5 01:24:17 | 显示全部楼层 |阅读模式
“? :”是一个三目运算符,运算顺序从右至左。 例:m=a>b?x:y 等价于 if(a>b) m=x;else m=y;在你给的例子当中 先算d>e?f:g, 由于d>e为假,取g值;
再算a>b?e:g,由于a>b为假,取g值。 我亦菜鸟,望同进。...
回复

使用道具 举报

千问 | 2012-5-5 01:24:17 | 显示全部楼层
a>b是 则m=e
否 则 d>e是则m=f
否则m=g...
回复

使用道具 举报

千问 | 2012-5-5 01:24:17 | 显示全部楼层
因为db?e:7有因为ab?e:d>e?f:g为:先判断a>b为假,得d;再判断d>e为假,得g;最后把g的值赋给m...
回复

使用道具 举报

千问 | 2012-5-5 01:24:17 | 显示全部楼层
这个就是三目运算符啊 因为 a>b为假所以执行了 d>e 这个 结果d>e又为假 就执行了 g所以最后就是 m=gg=7所以 m=7...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行