int x;x=1900L;printf("x=%d",x);为什么不报错,还能打印结果??

main()
{
int x;x=1900L;printf("x=%d",x);
getch();
}
我刚学c语言,没见过x=1900L,请问是什么意思哦?

第1个回答  2008-04-07
x=1900L 长整型 1900
L -- 英文 long

int x;x=1900L;printf("x=%d",x);

没错,所以不报错,还能打印结果。
printf("x=%d",x); 或
long int x;x=1900L;
printf("x=%ld",x);

VC++ 编译器能正确处理。声明 long int 或 int 都没问题。
第2个回答  2008-04-07
L就是表示这是一个长整型哈,如果你用VC的新版本的话,那么long和int的范围是一样的,所以是不会报错也不会警告的。
同样的道理,我们可以这样指示一个浮点型如:
float i = 1.03f;
如果这样的话:float i = 1.03;这里的1.03会被默认识别为double..本回答被提问者采纳
第3个回答  2008-04-07
1900-》1900L:转化为长整形没益处不会报错
x=1900L 1900L-》1900 在整形范围内没益处不会报错
第4个回答  2008-04-07
有错吗?LZ是否以为1900L有错?恩。。看书去吧

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网