本文主要是介绍关于0x,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一个常见问题,但是这里全部总结一下。
前面加:
(1)0b表示二进制
(2)加0x表示十六进制
(3)数字前加0表示八进制
(4)'\077' 是8进制表示,0可以省略,因为C/C++规定不允许使用斜杠加10进制数来表示字符
(5)'\0x3F' 是16进制表示
特别注意,前面是0,而不是o
int o123;
int a = o123;
这样o123就有歧义了,所以只可能是 0123 表示
关键字 | 位长(字节) | 范围 | 格式化字符串 |
---|---|---|---|
char | 1 | -128..127(或0..255,与体系结构相关) | %c |
unsigned char | 1 | 0..255 | |
signed char | 1 | -128..127 | |
int | 2(16位系统) 或 4 | -32768..32767 或 -2147483648..2147483647 | %i, %d |
unsigned int | 2 或 4 | 0..65535 或 0..4294967295 | %u |
signed int | 2 或 4 | -32768..32767 或 -2147483648..2147483647 | %i, %d |
short int | 2 | -32768..32767 | %hi |
unsigned short | 2 | 0..65535 | %hu |
signed short | 2 | -32768..32767 | |
long int | 4 或 8[3] | -2147483648..2147483647 或 -9223372036854775808..9223372036854775807 | %li, %ld |
unsigned long | 4 或 8 | 0..4294967295 或 0..18446744073709551615 | %lu |
signed long | 4 或 8 | -2147483648..2147483647 或 -9223372036854775808..9223372036854775807 | |
long long | 8 | -9223372036854775808..9223372036854775807 | %lli |
unsigned long long | 8 | 0..18446744073709551615 | %llu |
float | 4 | 3.4x10 38..3.4x10+38 (7 sf) | %f, %e, %g |
double | 8 | 1.7x10 308..1.7x10+308 (15 sf) | %f, %e, %g |
long double | 8 或以上 | 编译器相关 | %Lf, %Le, %Lg |
这篇关于关于0x的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!