根据此文档https://msdn.microsoft.com/en-us/library/tcxf1dw6(v=vs.140(.aspx程序员应该使用 %lld 打印 f 长变量,使用 %I64d 打印__int64变量。
根据这份文件 https://msdn.microsoft.com/en-us/library/s3f49ktz.aspx__int64长期以来只是另一个名字。
那为什么第一个文档不说 %lld 也可以用于__int64呢?VS团队是否认为未来的__int64会与长期不同?我无法想象如果他们关心向后兼容性,这将如何发生......
谢谢
> 是的,VS 确实支持从 VS2013 开始long long
的%lld
( _MSC_VER
>= 1800(。有关支持的 printf 说明符,请参阅 msdn 文档页。
尽管__int64
根据他们的文档"需要"I64
,但是,__int64
与long long
相同或可转换为并且可以在没有警告的情况下工作。