Visual Studio是否正式支持"%lld" __int64的格式说明符?

时间:2017-05-18 16:17:09

标签: c++ visual-studio format-specifiers long-long

根据这份文件 https://msdn.microsoft.com/en-us/library/tcxf1dw6(v=vs.140).aspx程序员应使用%l64 __ int64 变量打印 long long 变量%I64d 。< / p>

根据此文档https://msdn.microsoft.com/en-us/library/s3f49ktz.aspx __ int64 只是 long long 的另一个名称。

那么为什么第一份文件只是说%lld 也可以用于 __ int64 ? VS团队是否认为将来 __ int64 long long 不同?我无法想象如果他们关心向后兼容性会如何发生这种情况......

谢谢

1 个答案:

答案 0 :(得分:0)

是的,VS从VS2013开始为%lld支持long long_MSC_VER> = 1800)。 有关受支持的printf说明符,请参见msdn documentation page

尽管__int64根据他们的文档“需要” I64,但是__int64long long相同或可以转换为select id, name, max(date_) as date_, max(execution_id) keep (dense_rank last order by date_) as execution_id from abc group by id, name order by id; ID NAME DATE_ EXECUTION_ID ---------- ---- ---------- ------------ 1 AA 2019-09-09 11 2 BB 2019-09-09 44 ,并且在没有警告的情况下工作。