我和我的朋友正在争论%lli和%lld。我一般用%lli, 每次他争辩时都用%lldinprintf和scanf。他声称%lli和%lld不同。
GNU GCC 编译器中的%lli和%lld格式说明符之间有什么区别,还是相同?
对于 printf,它们完全相同。
http://en.cppreference.com/w/cpp/io/c/fprintf
d,i将有符号整数转换为十进制表示 [-]dddd。精度指定显示的最小位数。默认精度为 1。如果转换值和精度都为 ?0? 转换结果没有字符。
对于 scanf,它们是不同的。以下是文档中的引用。
d匹配一个十进制整数。数字的格式与 strtol() 预期的相同,基本参数的值为 10
i匹配一个整数。数字的格式与 strtol() 预期的相同,值为 ?0? 对于 base 参数(base 由解析的第一个字符决定)
在 的情况下i,如果您的号码以 开头0,它将被解析为八进制。
http://en.cppreference.com/w/cpp/io/c/fscanf
| 归档时间: |
|
| 查看次数: |
15803 次 |
| 最近记录: |