1、
c语言中,计算机以不同的前缀表示计算机采用哪种进制的数显示数值。
0表示8进制数的前缀。
0x和0X都表示16进制数的前缀。
比如十进制数16使用8进制数表示是020。(2乘以8的1次方)。
十进制数16使用16进制数表示是0x10。(1乘以16的1次方)。
在程序中,8进制数的转换说明是%#o, 16进制数的转换说明是%#x或者%#X。
测试程序如下:
#include <stdio.h> int main(void) { int num = 16; printf("decimal: %d.\n", num); printf("octal: %#o.\n", num); printf("hexa: %#x.\n", num); printf("hexa: %#X.\n", num); return 0; }
2、在显示8进制和16进制数的时候,也可以不加进制说明的前缀, 比如省略8进制的前缀0,16进制的前置0x;
#include <stdio.h> int main(void) { int x = 100; printf("dec = %d; octal = %o; hex = %x;\n", x, x, x); //no prefix printf("dec = %d; octal = %#o; hex = %#x\n", x, x, x); return 0; }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。