int的取值范围,该如何解决
int的取值范围有符号int的取值范围为-2^31到2^31-1,为什么呢?最大值为什么要减1呢?[解决办法]因为还有个 0
int的取值范围
有符号int的取值范围为-2^31到2^31-1,为什么呢?
最大值为什么要减1呢?
[解决办法]
因为还有个 0 需要表示.
[解决办法]
0111,1111,1111,1111你看应该是多少啊- -
[解决办法]
0
[解决办法]
因为默认是从0开始计算的啊。就像0、1、2、3······9是有10个数一样。如果是从1开始计算的话就不用减1了。
[解决办法]
一般int 4个字节 32位 除去1位符号位 2^31位 然后还有一个0要表示
[解决办法]
到limits.h头文件里找
#define INT_MIN (-2147483647 - 1) /* minimum (signed) int value */
#define INT_MAX 2147483647 /* maximum (signed) int value */
建议直接用这两个宏
[解决办法]
嘿嘿,回想起我们以前C语言考试了,不过TC的int貌似占2字节
[解决办法]
从0开始。。。
[解决办法]
4bit int的取值范围为-2^3到2^3-1,为什么呢?
最大值为什么要减1呢?
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 -8
1001 -7
1010 -6
1011 -5
1100 -4
1101 -3
1110 -2
1111 -1
[解决办法]
int 的正负号数的分界点 有一个 “0”
[解决办法]
最高位是符号位,不能算
[解决办法]
[解决办法]这个问题自己可以哪计算机做几个测试就弄懂了。 我就是这么弄懂的。
32 位太长, 用 8 位举个例子吧!
0000 0000 代表 0;
0000 0001 代表 1;
。
。
。
0111 1111 代表 127;(是 8 位最大的值了)
1000 0000 代表 -128; (也就是 -2**7)
1000 0001 代表 -127;
。
。
。
1111 1111 代表 -1;
实际上就是 最高位的值码是 -2**7, 后面的都是正值码。 最高位 0 代表 0*(-2**7) + 后面正数; 最高位 1 代表 1 * (-2**7) + 后面正数。 32 位类似。
[解决办法][解决办法]因为还有个0,0不算正负数。所以减一。新手帮你解答
[解决办法][解决办法]因为有符号的数在计算机里面是以补码的形式存放的,0只有一种表示方法
[解决办法][解决办法]符号位站以为
------解决方案--------------------
正如有符号2位只能表示-2^1~2^1-1,即-2~1。剩下的一位是无论如何保存不了(10)2的