整数 |
位 |
最小值 |
最大值 |
---|---|---|---|
char |
8 |
-128 |
127 |
signed char |
8 |
-128 |
127 |
unsigned char |
8 |
0 |
255 |
short |
16 |
-32768 |
32767 |
signed short |
16 |
-32768 |
32767 |
unsigned short |
16 |
0 |
65535 |
int |
32 |
-2147483648 |
2147483647 |
signed int |
32 |
-2147483648 |
2147483647 |
unsigned int |
32 |
0 |
4294967295 |
long -m32 |
32 |
-2147483648 |
2147483647 |
long -m64 |
64 |
-9223372036854775808 |
9223372036854775807 |
signed long -m32 |
32 |
-2147483648 |
2147483647 |
signed long -m64 |
64 |
-9223372036854775808 |
9223372036854775807 |
unsigned long -m32 |
32 |
0 |
4294967295 |
unsigned long -m64 |
64 |
0 |
18446744073709551615 |
long long |
64 |
-9223372036854775808 |
9223372036854775807 |
64 |
-9223372036854775808 |
9223372036854775807 |
|
unsigned long long |
64 |
0 |
18446744073709551615 |
整数转换为较短的 signed 整数时,低阶位从较长的整数复制到较短的 signed 整数中。结果可能为负数。
无符号整数转换为同等长度的 signed 整数时,低阶位从 unsigned 整数复制到 signed 整数。结果可能为负数。
对 signed 类型应用按位操作的结果是操作数的按位操作,包括 sign 位。因此,当且仅当两个操作数中每个对应的位均已置位时,结果中的每个位才置位。
结果的符号与被除数相同,因此,-23/4 的余数是 -3。