| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1109 人关注过本帖
标题:求教为什么加(int)
只看楼主 加入收藏
zqb7899
Rank: 4
等 级:业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
收藏
得分:0 
6楼正解
谢谢各位
2009-10-23 09:34
cjslaser2001
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2009-9-28
收藏
得分:0 
10000后面加l即可,还是溢出的问题!
2009-10-23 09:39
zqb7899
Rank: 4
等 级:业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
收藏
得分:0 
回复 10楼 cjslaser2001
你用的是Visual C++ 6.0吧
谭浩强:“用不同的编译系统时,具体情况可能与表3-1有些差别,例如Visual C++ 6.0为整型数据分配4字节(32位),其取值范围为-2147483648——2147483647。”
2009-10-23 09:43
zqb7899
Rank: 4
等 级:业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
收藏
得分:0 
还有一事不明:
#include <stdio.h>
main()
{
  long x;
  long wan,qian,bai,shi,ge;
  scanf("%ld",&x);                         /* x输入98765 */
  while(x>99999||x<=0) {printf("error.\n");scanf("%ld",&x);}
  wan=x/10000;
  printf("%ld %ld\n",wan,wan*10000);       /* 输出9 90000,正确。 */
  printf("%d %ld\n",wan,wan*10000);        /* 为什么会输出9 1603272704 */
  printf("%ld %d\n",wan,wan*10000);        /* 为什么会输出9 24464 */
  getch();
}
2009-10-23 09:58
cjslaser2001
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2009-9-28
收藏
得分:4 
回复 楼主 zqb7899
数据分离最好用下面的方法:
  wan=x/10000;
  qian=x%10000/1000;
  bai=x%1000/100;
  shi=x%100/10;
  ge=x%10;
2009-10-23 10:07
cjslaser2001
Rank: 1
等 级:新手上路
帖 子:8
专家分:4
注 册:2009-9-28
收藏
得分:0 
回复 14楼 zqb7899
我觉得应该是编译器本身的bug
2009-10-23 10:25
zqb7899
Rank: 4
等 级:业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
收藏
得分:0 
回复 15楼 cjslaser2001

学习了
2009-10-23 10:25
zqb7899
Rank: 4
等 级:业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
收藏
得分:0 
回复 14楼 zqb7899
奇怪
2009-10-23 20:00
快速回复:求教为什么加(int)
数据加载中...
 
   



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

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