找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3035|回复: 5

【反正随便水】问个好玩的问题

[复制链接]
发表于 2013-1-2 01:51:42 | 显示全部楼层 |阅读模式
int x = 0, y = 0, z = 0;
if(++x||++y&&++z);

问x, y, z的值是多少
&&的优先级高于||,但结果却是1, 0, 0

查书查到了这个
  
不知有没有关系?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2013-1-2 02:15:10 | 显示全部楼层
擦,我得试试去,从没这么玩过
 楼主| 发表于 2013-1-2 12:16:47 | 显示全部楼层

回 1楼(secondsen) 的帖子

这是一道试题= =蛋疼。
发表于 2013-1-6 13:12:33 | 显示全部楼层
C语言中对于逻辑判断语句的,如果多多个&&,其中一个为假,那么就不再做后面的逻辑判断,返回假。如果有多个||,其中一个为真,那么不再做后面的判断,返回真。
 楼主| 发表于 2013-1-20 16:38:44 | 显示全部楼层
引用第3楼mhqy于2013-01-06 13:12发表的  :
C语言中对于逻辑判断语句的,如果多多个&&,其中一个为假,那么就不再做后面的逻辑判断,返回假。如果有多个||,其中一个为真,那么不再做后面的判断,返回真。
事实上这道题的问题和短路法则关系不大,是结合律和运算顺序没关系的问题。
发表于 2013-1-20 17:05:42 | 显示全部楼层
好像是这样哈,根据短路法则,答案应该不是100哇,这个设计真奇葩。。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|幻想森林

GMT+8, 2026-10-30 22:12 , Processed in 0.012327 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表