通常我们使用C语言采用的都是十进制的形式输出,但有的程序员喜欢用八进制或十六进制进行输出,采用八进制或十六进制在表示计算机的相关值方面同样方便,2的3次方等于8,2的4次方等于十六,都是2的n次幂。那如何使用C语言来表示八进制或十六进制?
表示在C语言中使用0x或0X前缀表示十六进制,使用0前缀表示八进制。对应的格式转换符如下:
进制 | 显示 | 前缀显示 |
八进制 | %o | %#o;显示前缀0 |
十六进制 | %x或者%X | %#x或%#X;显示前缀0x或0X |
具体在程序中如何使用,看以下示例:
#include<stdio.h>
int main(void){
int a = 100;
printf("十进制 = %d;八进制 = %o;十六进制 = %x\n", a,a,a);
printf("十进制 = %d;八进制 = %#o;十六进制 = %#x\n", a,a,a);
return 0;
}
示例中分别用不带前缀和带有前缀的形式输出了变量a的值,运行结果如下:
总结(1)在C语言中使用格式说明符%d表示输出十进制,%o表示输出八进制,%x或%X表示输出十六进制。
(2)如果要带有前缀的输出八进制或十六进制,需要在格式说明符中加#。