一、基本概念
整型:整型是计算机中存储和使用的一种数据类型,其特点与数学意义上的整数类似,是属于整数集合Z中的数值。
二、进制
整型在计算机可以通过不同的进制来表示,常见的进制有八进制、十进制、十六进制等。
三、分类
整型数通常可以分为以下几类:
- 基本型:类型说明符为int,在内存中占2或4个字节(32/64位机),其取值为基本整常数
- 短整型:类型说明符为short int或short,在内存中占2个字节,其取值为短整常数
- 长整型:类型说明符为long int或long,在内存中占4个字节,其取值为长整常数
- 64位整型:类型说明符为_int64、long long int或long long,在内存中占8个字节,其取值为64位整常数
- 无符号型:类型说明符为unsigned,内存占用与对应有符号整型相同,其取值为非负值整常数
- 【注】无符号型用于说明整型是否携带符号,因此可以与其他类型同时出现表示该类型的无符号数。
四、前缀
除十进制外,其他进制的整型在表示时,需要在整型前添加相应的前缀:
- 八进制:八进制整型以0为前缀,数码取值为0~7,通常为无符号数
- 十进制:十进制整型通常没有前缀,数码取值为0~9
- 十六进制:十六进制整型以0x(或0X)为前缀,数码取值为0~9,a~f(或A~F)
五、后缀
一般来说,计算机和编译器支持在整型后添加后缀来表示不同类型的整型:
- l(L):长整型数
- ll(LL):64位整常数
- s(S):短整型
- u(U):无符号数
- 【注】并非所有的计算机和编辑器都支持后缀表示,可能不支持或者部分支持
PS:前后缀可以同时使用,表示某种进制的某种类型的有无符号的整型数,例如0X4ALU,表示十六进制无符号长整型数4A
六、表示范围
由于不同类型的整型数在内存中占用不同大小的内存,以及是否存在符号位,其所能表示的数值范围有所不同:
类型说明符 | 数值范围 | 内存占用(单位:字节) |
short | -32768~32767 | 2 |
int | -2147483648~2147483647 | 2/4 |
unsigned int | 0~4294967295 | 2/4 |
long int | -2147483648~2147483647 | 4 |
unsigned long | 0~4294967295 | 4 |
long long | -9223372036854775808~9223372036854775807 | 8 |
unsigned long long | 0~18446744073709551615 | 8 |