2012-07-22 61 views
5

可能重复的区别:
Difference between format specifiers %i and %d in printf什么的printf( “%I”)和printf( “%d”)

我刚才检查的参考,它说两者的它们表示有符号整数。我以为一定有一些差异

+0

无........... – Mysticial 2012-07-22 03:53:46

+0

可能有点历史;我不知道。 – chris 2012-07-22 03:54:04

+1

有@ paulsm4提到的SO重复。作为 引自C99标准文档,第7.19.6.1节: “8.转换说明符及其含义如下: d,i int参数在样式[ - ] dddd中转换为带符号的十进制数。要显示的最小位数;如果要转换的值可以用较少的数字表示,则用前导零扩展。默认精度为1。以零精度转换零值的结果不包含字符。换句话说,他们的待遇是一样的。 – 2012-07-22 04:02:30

回答

5

没有区别。

从C99标准文件,部分7.19.6.1:

d,我

的int参数被转换为符号十进制在样式[ - ] DDDD。精度指定出现的最小位数;如果要转换的值为 可用较少的数字表示,则用前导零扩展为 。默认精度为1. 转换零值的精度为零的结果为无字符

相关问题