为什么int型最大的数是2147483647

来源:百度知道 编辑:UC知道 时间:2024/05/23 19:54:44

C语言中int分为无符号和有符号两种,无符号就是只表示非负整数,一般现在32位机器中,int使用32位二进制表示,最大就是32个1,即2的32次方减1,是40多亿。对于有符号整数(Java中不存在有无符号一说,所以都看作是有符号的),起始为1表示负数,所以最大的数只能是以0开始,后边31个1,即2的31次方减1 。2的30次方是1G,大约1000*1M,也就是10多亿,再乘以2就是20多亿了。

因为int的数据类型为32位,根据2进制,也就是能表示负的2的31次幂到正的2的31次幂。

32位的机器,电脑里的数都是2进制的,也就是说32位的数都放1没有一个0的话是最大的,算起来不就是的32次方减1了

int长度一般是你用的机器的长度, 现在一般是32位的