1.C语言的三种整型数据类型:int、short int和long int
名称 | 全称类型说明符 | 缩写类型说明符 | 位数 | 范围 |
---|---|---|---|---|
整型 | int | int | 16位 | -32768~32768 |
无符号整型 | unsigned int | unsigned | 16位 | 0~65535 |
短整型 | short int | short | 16位 | -32768~32768 |
无符号短整型 | unsigned short int | unsigned short | 16位 | 0~65535 |
长整型 | long | long | 32位 | -2,147,483,648 至~2,147,483,647 |
无符号长整型 | unsigned long | unsigned long | 32位 | 0~4,294,967,295 |
2.int 和short
(1)C++标准规定,int占一个机器字长。
(2)在32位系统中int占32位,也就是4个字节,而在老式的16位系统中,int占16
位,即2个字节。
(3)C++标准中只限制规定short int不能超过int的长度,具体长度的可以由C++编
译器的实现厂商自行决定。目前流行的32位C++编译器中,通常int占4字节,
short int占2字节。其中short int可以简写为short。类似地,C++标准只限制了
long int不得小于int的长度,具体也没有作出限制。
3.整型常量
十进制、八进制和十六进制的整型常量可加后缀以指示类型,如下表所示。
后缀 | 类型 |
---|---|
u 或 U | unsigned |
l 或 L | long |
ll 或 LL | long long |
lu、LU、Lu、lU、ul、uL、UlUL | unsigned long |
llu、LLU、LLu、llU、ull、ULL、uLL、Ull | unsigned |
[long long 和unassigned long long 在 -xc99=none 和-Xc 模式下不可用。]