地球可以打穿吗:为什么int变量的范围是-2的15次方到2的15次方-1,是怎么计算出来的!
来源:百度文库 编辑:查人人中国名人网 时间:2024/10/03 15:52:57
因为你说的int变量占用2个字节,也就是16(位)bits.如果这16位只用来表示正数的话,就能最大表示2的16次方-1,如果发表示正负数的说,就需要把其中某一位拿来表示正负号,所以表示数值的位数就只有15位了,也就是2的15次方.
int变量共16位
负数:10000000 00000000 - 11111111 11111111
正数:00000000 00000000 - 01111111 11111111
即用第1位表示符号,后面的表示数字
16位的Int的范围:0~2^16-1,,这是没有符号的,如果要符号(+,-),只需减去2^15即可,这就是它的计算方法。
与硬件有关系。
早期的程序语言是运行在硬件水平相当低下的电脑上的,当时的32位机,分配给int变量的位数只有8位,要把第一位留给符号位(+还是-),其二位记录下2(占用2位),剩下的留给指数,按这种方法算出的整形变量的值就是你说的那么大。
为什么int变量的范围是-2的15次方到2的15次方-1,是怎么计算出来的!
在C语言中为什么int型的取址范围为-2的15次方到2的15次方减1?
2的100次方范围
在C语言中为什么int型的取值范围是-32768~32767
有符号的基本类型的取值范围是-32768~32767即-2的15次方~2的15次方减1。。我不明白为什么要减去1。
设x为float型变量,y为int型变量,则y=(int)x;是正确的赋值语句
在C语言中,怎么判断一个变量是int型的还是char型的?
企业的排名(从1到100)是品质型变量还是数值型变量,为什么?
定义整形变量int n=456,下面不为5的是?
const int *p;声明的是什么?是一个指向常量的指针么?为什么该指针还可以指向一个变量?