CC BY 4.0 (除特别声明或转载文章外)
如果这篇博客帮助到你,可以请我喝一杯咖啡~
编译有关的取值范围
编译器不同,宽度是不相同,分别如下:
–64位编译器–
char :1个字节
char*(即指针变量): 8个字节
short int : 2个字节
int: 4个字节 -2147483648~2147483647(-2^31~2^31-1)
unsigned int : 4个字节 ` 0~4294967295(0~2^32-1)
float: 4个字节
double: 8个字节
long: 4个字节
-2147483648~2147483647(-2^31~2^31-1)
long long: 8个字节
:-9223372036854775808~9223372036854775807(-2^63~2^63-1)
unsigned long: 8个字节
0~4294967295(0~2^32-1)
_int64:8个字节
-9223372036854775808~9223372036854775807(-2^63~2^63-1)
unsigned long long:
0~18446744073709551615(0~2^64-1)
unsigned __int64:
0~18446744073709551615(0~2^64-1)`
—32位编译器—
char :1个字节 char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)(16位机,32位机,64位机各不相同)
short int : 2个字节 int: 4个字节(16位机是2B,32位&64位是4B) unsigned int : 4个字节(16位机是2B,32位&64位是4B)
float: 4个字节 double: 8个字节
long: 4个字节 long long: 8个字节 unsigned long: 4个字节(16&32位是4B,64位是8B)
—16位编译器—
char :1个字节 char*(即指针变量): 2个字节 short int : 2个字节 int: 2个字节 unsigned int : 2个字节 float: 4个字节 double: 8个字节 long: 4个字节 long long: 8个字节 unsigned long: 4个字