在 C/C++ 里,int 的最值可以直接用标准库宏,也可以记常用值。
1. 头文件
c
运行
#include <limits.h> // C
#include <climits> // C++
2. 宏定义
INT_MAX:int 最大值INT_MIN:int 最小值
3. 常见平台值(32 位 int)
- 最大值:2147483647
- 最小值:-2147483648
4. 简单示例
c
运行
#include <stdio.h>
#include <limits.h>
int main() {
printf("int max: %d\n", INT_MAX);
printf("int min: %d\n", INT_MIN);
return 0;
}
如果你需要 short、long、long long 的最值,我也可以一并给你。
介绍的专业点
C/C++ 中 int 类型的取值范围(专业表述)
在遵循 ISO C/C++ 标准 且采用 二进制补码(two's complement) 表示有符号整数的主流系统(x86、x86_64、ARM 等)中:
1. 类型宽度与值域定义
int为有符号整数类型 ,标准规定其至少 16 位 ,现代通用平台固定为 32 位。- 二进制补码编码下,值域满足:−2n−1≤int≤2n−1−1其中 n 为类型位数。
2. 32 位 int 精确取值
- 最大值:231−1=2147483647
- 最小值:−231=−2147483648
3. 标准宏定义(规范写法)
头文件:
- C:
<limits.h> - C++:
<climits>
预定义宏:
INT_MAX:int 类型可表示的最大值INT_MIN:int 类型可表示的最小值
4. 专业说明
- 该范围是 32 位有符号整数的标准区间,Windows、Linux、macOS、Android、iOS 均一致。
- 溢出行为:有符号整数溢出属于未定义行为(UB),编译器不保证结果合法。
- 若需跨平台严格固定位数,应使用
<cstdint>中的int32_t、int64_t等定长类型。