类型 | 长度 | 数值范围 |
int | 4字节(32bits) | -231~(231-1) -2147483648 ~ 2147483647 |
short int | 2字节(16bits) | -215~(215-1) -32768 ~ 32767 |
long int | 4字节(32bits) | -231~(231-1) -2147483648 ~ 2147483647 |
unsigned int | 4字节(32bits) | 0~(232-1) 0~4294967295 |
unsigned short int | 2字节(16bits) | 0~(216-1) 0~65535 |
unsigned long int | 4字节(32bits) | 0~(232-1) 0~4294967295 |
char | 1字节(8bits) | -27~(27-1) -128~127 |
float | 4字节(32bits) | 3.4E–038~3.4E+038 |
double | 8字节(64bits) |
|
|
|
|
下面一段话选自《C++ Primer》:
short、int和long类型都表示整型值,存储空间的大小不同。一般,short类型为半个机器字长(word)长,int类型为一个机器字长,而long类型为一个或两个机器字长(在32位机器中int类型和long类型通常字长是相同的)。
摘自:http://blog.sina.com.cn/s/blog_6f62c9510101svjz.html
注意:赋值或初始化时,一定看清类型的范围,不能越界(写程序时要有这个意识)。若越界了,程序容易出错。
比如:对无符号类型的变量符合有符号的值,编译不会报错,但输出会是个异常值。