搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 请大家看看这个为什么会溢出
标题:
请大家看看这个为什么会溢出
只看楼主
墨清扬
等 级:
蝙蝠侠
威 望:
1
帖 子:294
专家分:817
注 册:2011-10-4
第
11
楼
得分:0
回复 9楼 TonyDeng
感激不尽!
酱油实习生
2012-01-15 22:44
有容就大
来 自:东土大唐
等 级:
版主
威 望:
74
帖 子:9048
专家分:14309
注 册:2011-11-11
第
12
楼
得分:0
我的是vc6.0++ 32位机。
8楼编译通过。
不过按9楼的讲解可以简化如下:
程序代码:
#include
<stdio.h>
int
main() {
__int64
sum; sum =(
__int64
)
100000
*
100000
; printf(
"
%I64d
"
, sum); }
10楼的方法在我的机子上运行通不过
梅尚程荀
马谭杨奚
2012-01-15 22:56
有容就大
来 自:东土大唐
等 级:
版主
威 望:
74
帖 子:9048
专家分:14309
注 册:2011-11-11
第
13
楼
得分:0
算学到新东西了
梅尚程荀
马谭杨奚
2012-01-15 22:57
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
14
楼
得分:0
這個問題的風險不在寫出100000*100000的時候,這樣寫一般人都會留神溢出,但在m=a*b的時候,就未必知道什麼時候可能遇到這個峰值,此時程序絕大多時間內都是運行正常的,只是偶爾出現問題,但很難留意到這個地方去。因此,在寫程序的時候,對實際環境中可能出現的數據應該有個摸查,瞭解其數值範圍,有針對性地設計數據類型。
[
本帖最后由 TonyDeng 于 2012-1-16 00:18 编辑
]
授人以渔,不授人以鱼。
2012-01-15 23:54
shixiaochi
来 自:兰州
等 级:
新手上路
帖 子:9
专家分:3
注 册:2012-1-16
第
15
楼
得分:0
回复 12楼 有容就大
可能是你的机子不支持C99吧 ll是c99的东西
2012-01-16 01:54
雨落的忧伤
等 级:
新手上路
帖 子:2
专家分:0
注 册:2012-1-16
第
16
楼
得分:0
我完全看不懂!!!
2012-01-16 02:38
16
2/2页
1
2
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-359687-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.017003 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved