搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 表达式的求值顺序
标题:
表达式的求值顺序
只看楼主
twtfufitx
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-4-15
结帖率:
100%
楼主
问题点数:0 回复次数:4
表达式的求值顺序
如果表达式X+Y的结果大于整型所能容纳的值,它就会产生溢出.在有些机器上,下面这个测试if(x+y+1>0)的结果将取决于先计算x+y还是y+1,因为在两种情况下溢出的地点不同. 如何理解
搜索更多相关主题的帖子:
求值
顺序
表达
2010-04-16 18:48
任永旺
来 自:河南项城
等 级:
新手上路
帖 子:9
专家分:2
注 册:2010-4-16
第
2
楼
得分:0
当然先x+y了,他们是从左运算的,能提这问题难倒不知道吗?
追风少年!
2010-04-16 22:47
twtfufitx
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-4-15
第
3
楼
得分:0
问是,如何理解,他有两个溢出点
2010-04-17 20:08
twtfufitx
等 级:
新手上路
帖 子:19
专家分:0
注 册:2010-4-15
第
4
楼
得分:0
如,signed int值为-32768---32767 X(32767)+Y(1)的值为32768,即-32768再加1,得-32767
和先运算Y+1=2,在加X得-32767 两个溢出点不是一样的.为什么会有两个不同的溢出点.
2010-04-21 17:00
itma
等 级:
业余侠客
帖 子:105
专家分:266
注 册:2010-2-8
第
5
楼
得分:0
我觉得是x+y有可能溢出。。。如果没溢出。。。他们再加一也可能溢出。。。两个可能的溢出点。。。不会存在先算y+1的情况吧。。。按说加法不是要从左到右吗?
2010-04-21 17:19
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-303275-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.631885 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved