Python中int的取值范围

python

处理程序错误时,时常会遇到需要借助int取值范围的情况,今天我们就来一起学习解决这个问题。

要想判断int类型的取值范围,首先要知道: 

1.int类型所占字节数; 

2.整型变量数据在内存中以什么方式存储;


获得int型所占字节数

#includeint main()

{

   printf("%d

",sizeof(int));

   return 0;

}

结果:

得到int所占字节数为4; 

又得知 

整型数据在内存中是以补码的方式存储; 

所以当数据>=0时,原码 = 反码 = 补码; 

数值范围为 0 ~ 2^31 - 1;

#include#includeint main()

{

   int a = (pow(2, 31) - 1);

   printf("%d

", a);

   return 0;

}


结果 == 2^31 - 1;

当让 a 为 2^31时;

可以看到结果为 -2^31; 

这是因为 

当a为2^31 - 1时,在计算机中的存储为01111(31个1);(补码形式)

当a为2^31时,在计算机中的存储为01111(31个1) + 1 =10000(31个0);(补码形式)即为 -2^31在计算机中的存储形式;

当数据小于0时, 范围为 -2^31 ~ 0; 

当a为- 2^31 - 1时;

为 2^31 -1;

所以int类型的取值范围为(- 2^31 ~ 2^31 -1)

各类基础数据类型的取值范围,在面试的时候可能会问到,所以大家一定要牢固掌握~更多Python学习推荐:云海天Python教程网

以上是 Python中int的取值范围 的全部内容, 来源链接: utcz.com/z/529278.html

回到顶部