C语言中,int的最大值与最小值: | 您所在的位置:网站首页 › 一个int最大多少 › C语言中,int的最大值与最小值: |
1. 有符号数: 分析:计算机中有符号整数是用补码表示的。 对于有符号的n位二进制数的其取值范围为:最小值:-2^(n-1); 最大值:2^(n-1) -1;
2.无符号数: 对于无符号的n位二进制数的其取值范围为: 最小值:0; //(所有的位全0) 最大值:2^n - 1; //所有的位全为1;
更多补充: 在C/C++编程中时常需要使用整数的最大值最小值,通常这两个常用是跟平台和操作系统有关的,不同的平台会有不同的值,因此可移植的办法就是推荐使用库函数提供的常量定义。 (1)类似的常量定义在limits.h和float.h头文件中,可以查看源文件获取类似常量的使用办法。在头文件中,整数的最值通常是这样的名字:INT_MAX, INT_MIN,直接使用即可。 (2)当然这两个最值完全可以通过编程实现: #define MAX_INT ((unsigned)(-1)>>1) #define MIN_INT (~MAX_INT) 但是,这两个宏仅仅是没有型别的符号,在使用的时候会陷入困境。看下面这段C++程序,输出结果出乎意料。 #include #include #define MAX_INT ((unsigned)(-1)>>1) #define MIN_INT (~MAX_INT) int main() { std::cout |
CopyRight 2018-2019 实验室设备网 版权所有 |