1. 整型类型
int
- 存储大小: 4 字节(32 位)
- 取值范围:
- 有符号(
signed int
):-2^(31)
到2^(31) - 1
(即 -2,147,483,648 到 2,147,483,647)
- 有符号(
short
- 存储大小: 2 字节(16 位)
- 取值范围:
- 有符号(
signed short
):-2^(15)
到2^(15) - 1
(即 -32,768 到 32,767)
- 有符号(
long
- 存储大小: 通常为 4 字节(32 位),在 64 位系统中可能为 8 字节(64 位)
- 取值范围:
- 有符号(
signed long
):-2^(31)
到2^(31) - 1
(32 位)或-2^(63)
到2^(63) - 1
(64 位)
- 有符号(
long long
- 存储大小: 8 字节(64 位)
- 取值范围:
- 有符号(
signed long long
):-2^(63)
到2^(63) - 1
(即 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807)
- 有符号(
2. 字符型
char
- 存储大小: 1 字节(8 位)
- 取值范围:
- 有符号(
signed char
):-2^(7)
到2^(7) - 1
(即 -128 到 127)
- 有符号(
3. 浮点型
float
(单精度浮点型)
- 存储大小: 4 字节(32 位)
- 取值范围: 大约为
±(1.2 × 10^(-38))
到±(3.4 × 10^(38))
,用 2 的幂表示较复杂,不直接使用 2 的幂来描述其范围。
double
(双精度浮点型)
- 存储大小: 8 字节(64 位)
- 取值范围: 大约为
±(2.3 × 10^(-308))
到±(1.7 × 10^(308))
,同样不直接用 2 的幂表示其范围。
4. 布尔型
bool
(布尔型)
- 存储大小: 1 字节
- 取值范围:
true
或false
(布尔型通常表示为 1 或 0,不涉及 2 的幂)
这些取值范围主要是根据存储位数推导出来的,特别是在整型数据类型中,符号位(用于表示正负)会影响取值范围。