进行开发时,对一些数据范围的要求,需要确定使用什么想的数据类型。在C++中,数据类型有:int (int32, int64), long , short, float, double, bool, char。其中bool 和char很简单,一个字节。重点探讨其余几种的长度。
在程序中,可通过使用sizeof获取类型的长度。
类型 | 数据范围(32位) | 64位 | 备注 |
char* | 4 | 4 | 指针四个字节(即一个整形) |
int | 4 | 4 | -2^31 ~ 2^31-1 -2147483648 ~ 2147483647 -2*10^9 (10的9次方数量级) |
unsigned int | 4 | 4 | 2^32 -1 |
short | 2 | 2 | |
long | 4 | 8 | 由编译器长度不同而不同,不建议使用,可以使用int 或者long long 代替 |
long long | 8 | 8 | -2^63 ~ 2^63-1 -9223372036854775808~9223372036854775807 -9*10^18 (10的18次方数量级) |
unsigned long long | 8 | 8 | 2^64-1 9*10^19(10的19次方数量级) |
double | 8 |