| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1020 人关注过本帖, 1 人收藏
标题:让程序来告诉你,我傻,还是你傻~~
只看楼主 加入收藏
Crocodile_JX
Rank: 5Rank: 5
等 级:职业侠客
帖 子:161
专家分:335
注 册:2010-9-13
收藏
得分:0 
这是运算符的 优先等级不同。圆括号的优先级最高,所以先算 圆括号里面的 a+=b,即 a=a+b;此时 a 的 值变为3 ,等号== 前面的 a 也跟着变为3啊。所以结果肯定是 true 啊。  后面的判断 也是这样。 呵呵...
2010-10-14 13:59
叫我稳哥
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2010-9-11
收藏
得分:0 
晕,这个跟b的值没有关系
2010-10-14 16:53
kacher
Rank: 2
等 级:论坛游民
帖 子:30
专家分:52
注 册:2009-9-26
收藏
得分:0 
这个很简单,因为if( a == (a+=b))这个当执行时,先执行a+=b,然后再在比较a的值,a和a的值当然是相等的了!因为a的值已经改变了!所以恒是真的!就是这样,下一个也是这种算法!
2010-10-14 17:03
cooseasy
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2010-6-5
收藏
得分:0 
以下是引用Crocodile_JX在2010-10-14 13:59:25的发言:

这是运算符的 优先等级不同。圆括号的优先级最高,所以先算 圆括号里面的 a+=b,即 a=a+b;此时 a 的 值变为3 ,等号== 前面的 a 也跟着变为3啊。所以结果肯定是 true 啊。  后面的判断 也是这样。 呵呵...
原来是这样 呵呵 。。。
2010-10-14 22:18
kevin_zh
Rank: 4
来 自:农村
等 级:业余侠客
威 望:1
帖 子:129
专家分:250
注 册:2010-8-14
收藏
得分:0 
蒽,学习了

"please input a number :\n"
2010-10-15 07:41
快速回复:让程序来告诉你,我傻,还是你傻~~
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012133 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved