首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

不是说long long类型在微软操作系统下必须用%I64d来输出吗?为什么也可以用%lld来输出?解决方案

2012-03-18 
不是说long long类型在微软操作系统下必须用%I64d来输出吗?为什么也可以用%lld来输出?不是说long long类型

不是说long long类型在微软操作系统下必须用%I64d来输出吗?为什么也可以用%lld来输出?
不是说long long类型在微软操作系统下必须用%I64d来输出吗?为什么在VC2010下也可以用%lld来输出?

C/C++ code
long long x=9223372036854775807;printf("%lld\n",x);

成功输出了:9223372036854775807
而DEV和CODE:BLOCKS则必须使用%I64d,用%lld输出的是long型的最大值,请问这是怎么回事?

[解决办法]
探讨

引用:
vc里就是等价的。
MSDN里也这么写的

Size Prefixes for printf and wprintf Format-Type Specifiers
To specify Use prefix With type specifier
long int
l (lowercase L)
d, i, o, x, ……

热点排行