在处理程序错误时,我们经常会遇到需要使用int值范围的情况。今天我们将一起学习解决这个问题。
要想判断int类型的取值范围,首先要知道:
1.int类型所占字节数;
2.整型变量数据在内存中以什么方式存储;
获得int型所占字节数
<p><span>#includeint main()
{
printf("%d\n",sizeof(int));
return 0;
}<br/></span></p>
结果:
得到int所占字节数为4;
又得知
整型数据在内存中是以
补码
的方式存储;
所以当数据>=0时,原码 = 反码 = 补码;
数值范围为 0 ~ 2^31 - 1;
<p><span>#include#includeint main()
{
int a = (pow(2, 31) - 1);
printf("%d\n", a);
return 0;
}<br/></span></p>
结果 == 2^31 - 1;
当让 a 为 2^31时;
可以看到结果为 -2^31;
这是因为
当a为2^31 - 1时,在计算机中的存储为01111(31个1);(补码形式)
当a为2^31时,计算机中的存储为01111(31 1s)+1=10000(31 0s); (补码形式)是-2^31在计算机中的存储形式;
当数据小于0时, 范围为 -2^31 ~ 0;
当a为- 2^31 - 1时;
为 2^31 -1;
所以int类型的取值范围为(- 2^31 ~ 2^31 -1)
面试的时候可能会问到各种基础数据类型的取值范围,所以大家一定要牢牢把握~更多Python学习推荐:
。
(推荐操作系统:windows7系统、Python 3.9.1,DELL G3电脑。)
本文为原创文章,版权归知行编程网所有,欢迎分享本文,转载请保留出处!
你可能也喜欢
- ♥ 5分钟获取Python中函数的参数11/14
- ♥ python如何加载文件路径01/02
- ♥ Python数据可视化库有哪些10/23
- ♥ python TestCase测试用例的使用方法12/04
- ♥ 如何在python中编写判断语句09/29
- ♥ python中如何传递参数值01/01
内容反馈