关于数据类型的取值范围的理解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于数据类型的取值范围的理解相关的知识,希望对你有一定的参考价值。

以int类型为例

int类型一般为四个字节,共32位。

int 用补码表示,补码表示中负数比正数多一个,最大值为2147483647 最小的数为 -2147483648,那么为什么为多一个数呢,就是0的表示,只有+0才是正常的,-0被移做最小的那个int了。

符号为0为正,1为负,所以正数的最大值为01111111111,那么当这个最大的数加一有神马情况呢?就是变成了100000000000,这个数,其实按照取反加一来表示时,这个数应该是标准的-0,但是由于补码把这个改成了最小的负数,所以INT_MAX+1就是INT_MIN,记住正数最大加一后变最小的;

上面说的这个climits这个头文件中,有INT_MAX和INT_MIN

正数的范围是0~2147483647,二进制就是0000000000~01111111111111111;

负数的范围是-2147483648~-1,二进制就是1000000000~ 11111111111111111;

如图所示:

技术分享图片

以上是关于关于数据类型的取值范围的理解的主要内容,如果未能解决你的问题,请参考以下文章

关于c语言float取值范围

数据库中的数据类型长度(理解)

sqlserver中datetime类型字段的取值范围是多少?

C语言各个数据类型取值范围

java数据类型,取值范围,引用类型解析

JAVA四种整数数据类型的取值范围分别是多少