| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 572 人关注过本帖
标题:[求助]为什么这两个执行结果相差那么大啊?
只看楼主 加入收藏
菜鸟1号
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2006-4-7
收藏
 问题点数:0 回复次数:7 
[求助]为什么这两个执行结果相差那么大啊?

第一个

void main()
{ short k=1000,p;
p=k*k;
cout<<p<<endl;
}


第二个
void main()
{ short k=1000,p;
p=k*k;
cout<<p<<endl;
}
搜索更多相关主题的帖子: 结果 
2006-07-01 13:18
猫色色
Rank: 2
等 级:论坛游民
帖 子:135
专家分:25
注 册:2006-6-8
收藏
得分:0 
我没看出来这两个程序哪有不同的呀!
你能指一下吗??

我们在成长
2006-07-01 23:24
菜鸟1号
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2006-4-7
收藏
得分:0 

第一个

void main()
{ short k=1000,p;
p=k*k;
cout<<p<<endl;
}


第二个
void main()
{ short k=1000,p;
p=k*k/k;
cout<<p<<endl;
}


虽然我是一只菜鸟...但是菜鸟也有飞上蓝天的那一天...
2006-07-02 09:52
猫色色
Rank: 2
等 级:论坛游民
帖 子:135
专家分:25
注 册:2006-6-8
收藏
得分:0 

因为P被负的值不一样呀1
一个是
P=K*K
另一个是
P=K*K/K


我们在成长
2006-07-02 18:54
菜鸟1号
Rank: 1
等 级:新手上路
帖 子:43
专家分:0
注 册:2006-4-7
收藏
得分:0 
我知道啊...可是结果相差太大了,,你运行一下就知道了

虽然我是一只菜鸟...但是菜鸟也有飞上蓝天的那一天...
2006-07-02 19:24
tianykun
Rank: 4
等 级:禁止访问
威 望:11
帖 子:3727
专家分:0
注 册:2005-11-13
收藏
得分:0 

把short 改成int 就没异议拉。


离开这里,离开你的视野,归隐到属于我的地方,无论何处
2006-07-03 10:14
Bekky
Rank: 3Rank: 3
等 级:新手上路
威 望:7
帖 子:354
专家分:0
注 册:2006-5-29
收藏
得分:0 
在win32里,short的取值范围应该是-32768 --- 32768,而你的1000×1000=1000000,明显超出范围,你把P的类型改为Double试试,应该可以了。。

我的编译环境为WinXp + VC 6.0 http://blog..cn/yobo
2006-07-03 10:43
qinhuli
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2006-6-30
收藏
得分:0 
原来是SHORT的问题,哈哈,受教
2006-07-03 18:28
快速回复:[求助]为什么这两个执行结果相差那么大啊?
数据加载中...
 
   



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

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