一、0x十六进制和0八进制
0x开头是16进制 英文:hexadecimal 简称HEX
0开头是8进制 英文: octal 简称OCT
- 八进制数是一种逢八进一的计数体制,基数是8,用0~7表示,如077。
- 八进制数以数字0开头。
- 十六进制数是一种逢十六进一的计数体制,基数是16,用09,AF表示,如0xFF或0XFF。
- 十六进制数以数字0和字母x的组合0x或0X开头。其中字母x是不区分大小写的,即0x与0X等价。
Note:
输出打印八进制数时 %o 这里是字母 o
int a = 12; 把数 a 分别 以十进制,八进制,十六进制形式 输出打印
printf("%d,%o,%x", a, a, a);//不显示数制前缀
printf("%#d,%#o,%#x", a, a, a);//显示数制前缀
参考链接
二、十六进制和字节 位 二进制的关系
1字节 = 2个十六进制数位 = 8个二进制数位
因此,1个16进制数对应4个二进制数位,2个16进制数位对应8个二进制数位,及1个字节。