_(´□`」 ∠)_询问一个c primer plus书上的问
c语言吧
全部回复
仅看楼主
level 8
珂珂丶😈 楼主
书上说16位机int的最小取值范围是[-32767,32767]。为什么不是[-32768,32767],不应该包含2^16=65536个数字吗,书上的范围只有65535个数字啊![泪][泪]
2018年10月28日 02点10分 1
level 8
珂珂丶😈 楼主
dd
2018年10月28日 02点10分 2
level 8
珂珂丶😈 楼主
nnn
2018年10月28日 02点10分 3
level 8
珂珂丶😈 楼主
bbbb
2018年10月28日 02点10分 4
level 8
珂珂丶😈 楼主
kkk
2018年10月28日 02点10分 5
level 8
珂珂丶😈 楼主
gbvv
2018年10月28日 02点10分 6
level 8
珂珂丶😈 楼主
ssdd
2018年10月28日 02点10分 7
吧务
level 14
书上没错,C标准规定的short/int最小范围的确是-32767~32767,注意是最小范围,也就是必须保证能存储和表示这个范围里的数
为什么只有65535个数是因为其中存在正负0的问题,也就是00000000 00000000和10000000 00000000这两个数,前者表示0毫无疑问,而后者可以表示-0,此时范围就是-32767~32767;也可以表示-32768,此时范围就是-32768~32767。
2018年10月28日 02点10分 8
哦!谢谢大佬,爱你[爱心]
2018年10月28日 02点10分
1