d 是 decimal 的首字母,%d 表示以十进制形式输出。
那么,octal 是八进制的意思,%o 是不是以八进制形式输出呢?hexadecimal 是十六进制的意思,%h 是不是十六进制输出呢?
猜对了一半!
%o 确实表示八进制输出,但是%h 什么也不是,%x 才表示十六进制输出形式。请看下面的例子:
#include <stdio.h>
int main()
{
int a=1234;
printf("decimal: %d \noctal: %o \nhexadecimal: %x\n", 1234, "Think you");
return 0;
}
运行结果: