学计算机那么久了,对计算的存储还是有点模糊,知道在计算机数据的存储都是二进制进行的,却不知道其中的奥妙所在。
一个字节,占据8位,即:0000 0000
两字节就是 :0000 0000 0000 0000
因为计算机是以二进制存储数据,所以一个字节能表示二的八次方的数据,二个字节能表示2的16次方以此类推。
C语言中int的取值范围为:-2147483648 ~ 2147483647
解释如下:
int类型在C语言中占4个字节,即32个二进制位。
当表示正数时,最高位为符号位(符号位为0),最大的正数是 0111 1111 1111 1111 1111 1111 1111 1111 即2^31 -1 = 2147483647
当表示负数时,最高位为符号位(符号位为1),最小的负数是 1000 0000 0000 0000 0000 0000 0000 0000 而在计算机中是以补码的形式存储的,
C语言规定 1000 0000 0000 0000 0000 0000 0000 0000 的补码为-2147483648
所以C语言中int的取值范围为:-2147483648 ~ 2147483647
本文详细解析了C语言中int类型的存储方式及取值范围,包括二进制表示方法、补码形式及其如何影响数值的最大最小值。
5941

被折叠的 条评论
为什么被折叠?



