C/C++中 int 的最大最小值

在 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 等定长类型。
相关推荐
揽星河..8 小时前
【C语言】分支和循环
c语言·c++·算法
小熊恋旧8 小时前
Python 面向对象编程:方法、属性、继承与多态详解
开发语言·python
云边云科技_云网融合8 小时前
面向汽车零部件制造业场景的解决方案 | 70 秒:一台车下线的时间里,藏着五张网
开发语言·汽车·php
Evand J8 小时前
【PMSM滤波例程2】PMSM未知负载转矩观测EKF。MATLAB例程(负载增广EKF与实际仿真结果)。附下载链接
开发语言·matlab·电机
will_net8 小时前
apollo 站点部署&C#接入
开发语言·c#·apollo
晗夜未央9 小时前
任务队列反复失败,先分清重试、阻塞和结果待核对
开发语言·javascript
熊猫钓鱼>_>9 小时前
四种书签,一条时间线:一个读书 App 的记忆颗粒与它的边界案例【鸿蒙心迹】
开发语言·华为·ai编程·harmonyos·鸿蒙·openharmony·鸿蒙pc
Fuyo_11199 小时前
C++ AVL树保姆级详解:从平衡因子到四大旋转机制
java·c++·算法
努力努力再努力wz10 小时前
【Lua 入门系列】Lua 函数深入理解:函数对象、多返回值、可变参数、闭包、递归与尾调用优化
开发语言·lua
揽星河..10 小时前
【C语言】猜数字游戏
c语言·算法·游戏