C语言中的数的范围是什么意思

来源:百度知道 编辑:UC知道 时间:2024/06/29 00:11:42
signed short int 有符号短整型数说明。简写为short或int, 字长为2字节共16位二进制数, 数的范围是-32768~32767。
signed long int 有符号长整型数说明。简写为long, 字长为4字节共32位二进制数, 数的范围是-2147483648~2147483647。
unsigned short int 无符号短整型数说明。简写为unsigned int, 字长为2字节共16位二进制数, 数的范围是0~65535。
unsigned long int 无符号长整型数说明。简写为unsigned long, 字长为4字节共32位二进制数, 数的范围是0~4294967295。
这些数的范围是什么意思呢

数的范围就是可以表示的数值能取的一个大小范围,
只给你举一个例子.
signed short int 有符号短整型数说明。简写为short或int, 字长为2字节共16位二进制数.
有符号,所以最高位是符号位不能表示数值.剩余15位可以表示数值.

当为正数时:最高位为0(或1,与具体系统或机器有关),剩余15位全为1时,取得最大的整数,值为2的15次方减一,就是32767.

当为负数时,负数采用补码形式存放,数值位全为0,对应原码代表的数值是这个值取反再加1,就是2的15次方,就是32768,因为它为负就是-32768了.

而不在这个范围的数就无法被表示出来,这个范围就是它的数值范围了!

范围就是最小数到最大数是多少,你定义好了寿命类型的数据,无论怎么样也不会超过这个范围,超过了的话就会以垃圾数或乱码或空来显示结果!所以记住自己可能要用多大的数就用什么类型来定义范围,这是编程的规范!

关于整型数的范围问题C/C++ / C语言- CSDN社区community.csdn.net

http://topic.csdn.net/t/20030116/20/1366395.html

1 字节 = 8位
int型 2字节 = 16位
其实现在已经完全不是了。新的标准 int 型所占空间随编译器而变,现在已经都是32位的了。