问题补充说明:就像知道int的取值范围在内存中分配2个字节 也就16位的二进制-32768 怎么来的32767又是怎么来的0111 1111 1111 1111 我知道最高位代表符号位 上面的十进制为 32767最小取值应该是最小的负数1111 1111 1111 1111 搞晕了 可能给我说明一下!
C语言中int的取值范围为来自:-2147483648~2147483647
解释如下:
int类型在C语言中占4个字节,即32个二进制位。
当表示正数时,最高位为符号位(符号位为0),最大的正数是01111111111111111111111111111111即2^31-1=2147483647
当表示负数时,最高位为符号位(符号位为1)360问答,最小的负数是1000000000000000000000000000对看决示发红质造界军去0000而在计算机中是以补码的形式存储的,C语言规定100000000000继节丝坚括000000000约评英广营又本刘研完00000000000的补码为-2147483648
所以C语言中int的取值范围为:-2147483648~2147483647