标题:[求助]数据范围问题
只看楼主
yjh8656
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2007-3-6
得分:0 
用了1d%  还是不行   郁闷了。
2007-03-15 22:23
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
得分:0 
是LD不是1D

雁无留踪之意,水无取影之心
2007-03-15 22:23
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
得分:0 
以下是引用moonwalker在2007-3-15 22:22:36的发言:

a,c都要为long才可以

这个不用吧,会自动转换的


雁无留踪之意,水无取影之心
2007-03-15 22:25
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
得分:0 
#include "stdio.h"
main()
{
long int a,b,c;
a=32767;
b=1;
c=a+b;
printf("%ld\n",c);
}

雁无留踪之意,水无取影之心
2007-03-15 22:26
yjh8656
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2007-3-6
得分:0 
main()
{
long int a;
a=32768;
printf("%d",a); 或者 printf("%1d",a);
}
运行都是 -32768
汗!!!
2007-03-15 22:26
无玩过界
Rank: 1
等 级:新手上路
威 望:2
帖 子:246
专家分:0
注 册:2007-2-20
得分:0 

这个看具体编译器,有些编译器支持这些。


2007-03-15 22:27
清水香里
Rank: 1
等 级:新手上路
帖 子:144
专家分:0
注 册:2006-9-3
得分:0 
#include<stdio.h>
void main()
{
long int a,b,c;
a=32767;
b=1;
c=a+b;
printf("%ld",c);
}
是LD 哦。。。晕。。

www./www.
2007-03-15 22:29
PcrazyC
Rank: 6Rank: 6
等 级:贵宾
威 望:29
帖 子:5652
专家分:0
注 册:2006-10-20
得分:0 
说了是LD不是1D,你那个写的是1D

雁无留踪之意,水无取影之心
2007-03-15 22:29
yjh8656
Rank: 1
等 级:新手上路
帖 子:46
专家分:0
注 册:2007-3-6
得分:0 
对了   谢谢   是LD     我想问一下 LD是什么意思?
2007-03-15 22:31
moonwalker
Rank: 1
等 级:新手上路
威 望:1
帖 子:909
专家分:2
注 册:2007-3-2
得分:0 
以下是引用yjh8656在2007-3-15 22:26:50的发言:
main()
{
long int a;
a=32768;
printf("%d",a); 或者 printf("%1d",a);
}
运行都是 -32768
汗!!!

这个是符号位扩展的原因,你可以用unsigned long a;就没问题了


“视频教程网”免费提供教学资源
C不限制你的自由!
条件是自己承担滥用自由的恶果!
2007-03-15 22:31



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-124502-1-1.html




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

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