C语言中的一些小知识汇集(不断更新)
前面加0b表示二进制
加0x表示十六进制
数字前加0表示八进制
'?' //ASCII值是63
'\077' //是8进制表示'?',0可以省略,因为C,C++规定不允许使用斜杠加10进制数来表示字符
'\0x3F' //是16进制表示'?'
char1-128..127(或0..255,与体系结构相关) %cunsigned char10..255 signed char1-128..127 int2(16位系统) 或4-32768..32767 或
-2147483648..2147483647 %i, %d
unsigned int2 或40..65535 或
0..4294967295 %u
signed int2 或4-32768..32767 或
-2147483648..2147483647 %i, %d
short int2-32768..32767 %hiunsigned short20..65535 %husigned short2-32768..32767 long int4 或8[3]-2147483648..2147483647 或
-9223372036854775808..9223372036854775807 %li, %ld
unsigned long4 或80..4294967295 或
0..18446744073709551615 %lu
signed long4 或8-2147483648..2147483647 或
-9223372036854775808..9223372036854775807
long long8-9223372036854775808..9223372036854775807 %lliunsigned long long80..18446744073709551615 %llufloat43.4x10?38..3.4x10+38 (7 sf) %f, %e, %gdouble81.7x10?308..1.7x10+308 (15 sf) %f, %e, %glong double8 或以上编译器相关 %Lf, %Le, %Lg