c++int型占4个字节,也就是32位
答案:5 悬赏:40 手机版
解决时间 2021-02-04 12:59
- 提问者网友:龅牙恐龙妹
- 2021-02-04 05:08
鄙人感觉int型最大值是2^32,可是答案却好像是2^31-1,请高手指教
最佳答案
- 五星知识达人网友:归鹤鸣
- 2021-02-04 05:22
32位中的最高位是符号位,表示正负,其余的31位表示绝对值,从0到第32位是1其余各位是0共有2^31次方个数字,而第32位是符号位,不参与绝对值的运算,所以最大值就是最高位是0,其余的31位都是1,也就是(2^31)-1
全部回答
- 1楼网友:逐風
- 2021-02-04 08:50
2^32是个数,2……32-1是值,从0开始
- 2楼网友:逐風
- 2021-02-04 07:38
int型变量有时候占4个字节(在win32),有时候占2个字节(在dos)
这个int类型的大小到底是跟编译器有关,还是跟cpu有关,还是跟操作系统有关?
所谓的16位32位64位系统是由cpu决定的,由机器指令的寻址、寄存器位数决定的
os受cpu的限制,但在32位的cpu下16位的os也可以跑(就向上面提到的所谓纯dos)
很多os是向前兼容的,就是使以前的程序也能运行,如果编译器本身是16位时代做的,那么os会提供一个模拟16位的子环境供这个编译器使用
- 3楼网友:爱难随人意
- 2021-02-04 06:51
因为还要分一半给负数
所以变成2^31了
还要分一个位置给0
就变成2^31-1
- 4楼网友:往事隔山水
- 2021-02-04 06:27
从-2^31~2^31-1
这是有符号的
无符号的
从0~2^32-1
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯