int a=-1;
printf("%d,%o",a,a);
-1 在内存单元中的存放形式(以 4 个字节补码形式存放)如下:
输出为
-1,37777777777
不会输出带负号的八进制整数。对长整型(long 型
“
)可以用 %lo”格式输出。
同样可以指定字段宽度,例如:
printf("%13o",a);
_ _ 37777777777
(3)x 格式符。以十六进制数形式输出整数。同样不会出现负的十六进制数。
例如:
int a=-1;
printf("%x,%o,%d",a,a,a);
输出结果为
ffffffff,37777777777,-1
“
同样可以用 %lx”
“
输出长整型数,也可以指定输出字段的宽度,例如 %12x”。
(4)u 格式符。用来输出 unsigned 型数据,即无符号数,以十进制整数形式输
出。
一个有符号整数(int 型)也可以用%u 格式输出;反之,一个 unsigned 型数据也可
以用%d 格式输出。按相互赋值的规则处理。Unsigned 型数据也可以用%o 和%x 格式
输出。
(5)c 格式符。用来输出一个字符。例如:
char c='a';
printf("%c",c);
‘
输出字符 a’
“
,请注意: %c”中的 c 是格式符,逗号右边的 c 是变量名,不要
混淆。
一个整数,只要它的值在 0~255
“
范围内,也可以用 %c”
使之按字符形式输出,在输出前,系统会将该整数作为 ASCII 码转换成相应的字
符;反之,一个字符数据也可以用整数形式输出。例如:
char c='a';
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1