| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 557 人关注过本帖
标题:请教关于整形数据的问题
只看楼主 加入收藏
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
请教关于整形数据的问题
设整形数据N=123456786543十二位整数,
将N定义为哪种整形数据才不溢出?
2013-12-20 00:07
naixin
Rank: 2
等 级:论坛游民
帖 子:16
专家分:26
注 册:2013-10-5
收藏
得分:0 
long   -2147483648~2147483647
long long的最大值:9223372036854775807
long long的最小值:-9223372036854775808
所以应该定义为long long
2013-12-20 00:19
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 2楼 naixin
我定义N为long long时编译时显示为错误:
error C2632: 'long' followed by 'long' is illegal
执行 cl.exe 时出错.
为什么?是不是C++系统不支持?应使用那种系统?
2013-12-20 08:53
tremere
Rank: 6Rank: 6
来 自:火星
等 级:侠之大者
帖 子:223
专家分:432
注 册:2013-3-11
收藏
得分:0 
楼上正解

极品菜鸟,来学习啦,啦啦啦啦啦啦啦。。。
2013-12-20 08:55
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
long long 不是所有编译器都支持的

DO IT YOURSELF !
2013-12-20 09:03
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:0 
以下是引用zhu_zhi在2013-12-20 08:53:47的发言:

我定义N为long long时编译时显示为错误:
error C2632: 'long' followed by 'long' is illegal
执行 cl.exe 时出错.
为什么?是不是C++系统不支持?应使用那种系统?
逻辑推理有问题吧。这只能说明你的cl编译器不支持long long,还不能说明C++语言不支持long long。

有次,你去问一个哑巴“你会说话吗?”,哑巴摇了摇头。
因为哑巴属于人类,于是你大声宣布:“人类是不会说话的”
2013-12-20 09:14
so_love
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:7
帖 子:812
专家分:4151
注 册:2013-11-25
收藏
得分:0 
楼上正解

一花一世界、一叶一追寻、片片花叶落、情系何人身。
2013-12-20 09:24
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:20 
对于这种题,先算一下 123456786543 需要多少bits才能表示。
如果在windows下,打开windows自带的计算器,输入 123456786543n/2n=,就得到一个数字 36.845215188810476422425343381628,也就是至少要37bits的整型才可以。

然后你就在<stdint.h>找大于37bits的整型,比如
int64_t / uint64_t
int_least64_t / uint_least64_t
int_fast64_t / uint_fast64_t

当然,前提是你的编译器要支持C语言标准,因为这些都是标准C语言的内容,即TC、VC等就没办法了。
现在的VC可以用 long long / unsigned long long
而VC5/VC6可以用 __int64 / unsigned __int64


2013-12-20 11:18
zhu_zhi
Rank: 2
来 自:广西百色
等 级:论坛游民
帖 子:129
专家分:92
注 册:2013-4-25
收藏
得分:0 
回复 8楼 rjsp
谢谢你的帮助!
2013-12-20 16:15
快速回复:请教关于整形数据的问题
数据加载中...
 
   



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

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