| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2165 人关注过本帖
标题:关于数据溢出的问题 基于VC++6.0
只看楼主 加入收藏
王璐
Rank: 2
等 级:论坛游民
帖 子:126
专家分:54
注 册:2010-7-26
结帖率:93.1%
收藏
已结贴  问题点数:20 回复次数:22 
关于数据溢出的问题 基于VC++6.0
# include<stdio.h>
# include<math.h>
void main()
{   
    int a;long b;
    a=pow(2,31)-1;b=a+1L;
    printf("%d,%ld\n",a,b);
}
按理结果应该是217483647,2147483648,但是,结果是2147483647,-2147483648,为什么还溢出呢?
搜索更多相关主题的帖子: 数据 
2010-07-26 20:34
phrankmoon
Rank: 2
等 级:论坛游民
帖 子:32
专家分:15
注 册:2010-7-15
收藏
得分:2 
在32位计算机中:
LONG_MIN:    -2147483647
LONG_MAX:    +2147483647
ULONG_MAX:   4294967295
2010-07-26 21:38
王璐
Rank: 2
等 级:论坛游民
帖 子:126
专家分:54
注 册:2010-7-26
收藏
得分:0 
回复 2楼 phrankmoon
long min 应该是 -2147483648吧,但是又有什么关系呢?还是不懂。。。
2010-07-27 12:06
encounter
Rank: 5Rank: 5
来 自:扬州
等 级:职业侠客
威 望:2
帖 子:150
专家分:359
注 册:2010-7-24
收藏
得分:8 
这涉及到补码
那数太长,意思一下啊

2147483647       二进制 011111111111...1
2147483647+1            100000000000...0 这是-2147483648补码

ping   nbtstat   netstat   tracert    nat   at    ftp   telnet..................
2010-07-27 13:19
encounter
Rank: 5Rank: 5
来 自:扬州
等 级:职业侠客
威 望:2
帖 子:150
专家分:359
注 册:2010-7-24
收藏
得分:0 
二进制 已经溢出了呀
计算机只按二进制计算
十进制只是二进制对应的一种形式


ping   nbtstat   netstat   tracert    nat   at    ftp   telnet..................
2010-07-27 13:25
sunyh1999
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:14
帖 子:1178
专家分:3032
注 册:2009-5-17
收藏
得分:2 
溢出了,十进制只是二进制的一种形式,八进制、十六进制都是如此,是一种表达罢了

欢迎来到我的博客:http://blog..cn/noisunyuhong
2010-07-27 13:28
王璐
Rank: 2
等 级:论坛游民
帖 子:126
专家分:54
注 册:2010-7-26
收藏
得分:0 
回复 6楼 sunyh1999
我意思是溢出的原因是什么
2010-07-27 19:14
王璐
Rank: 2
等 级:论坛游民
帖 子:126
专家分:54
注 册:2010-7-26
收藏
得分:0 
回复 5楼 encounter
不明白溢出的原因额
2010-07-27 19:15
encounter
Rank: 5Rank: 5
来 自:扬州
等 级:职业侠客
威 望:2
帖 子:150
专家分:359
注 册:2010-7-24
收藏
得分:0 
美女
你是不是在自学
值得表扬
想要明白
你去学会反码,补码
自然就明白了
这东西靠个人悟性
有的人看一遍就懂
有人一直不明白
我呢
就属于那种

ping   nbtstat   netstat   tracert    nat   at    ftp   telnet..................
2010-07-27 19:33
王璐
Rank: 2
等 级:论坛游民
帖 子:126
专家分:54
注 册:2010-7-26
收藏
得分:0 
回复 9楼 encounter
是这样的,按理说呢,是不应该出现溢出的,因为,在VC中,long可以达到21亿。。。所以,我不明白,可以否???
2010-07-27 23:16
快速回复:关于数据溢出的问题 基于VC++6.0
数据加载中...
 
   



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

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