if (number&1 == 0) number为int型,这句编译有错,如何改
if (number&1 0)number为int型,这句编译有错,怎么改?在线等rt[解决办法]探讨(number & 1) 0[解
if (number&1 == 0) number为int型,这句编译有错,怎么改?在线等
rt
[解决办法]
[解决办法]int number = 0 ;
if((number&1)==0){
}
楼上说的很对 。+++++++1
[解决办法]== 的优先级比前面&高,所以如果不加括号会先计算后面的==,
这样就相当于让number与一个boolean类型的量做按位与操作了,所以会报错
[解决办法]这么好的判断奇偶的算法,落在楼主的手里。
让我感觉貌似1级小号拿着神器,却不知道咋用。
[解决办法]优先级问题。。。
[解决办法] 优先级问题,加上括号就ok
如:
int number=5 ;
if((number&1)==0){
}
[解决办法](number & 1) == 0
[解决办法][解决办法]随手加括号是个好习惯
[解决办法][解决办法](number & 1) == 0
[解决办法]学习了
[解决办法]括号是必须滴啊
[解决办法]学习学习
[解决办法]学习了,但是我对这个&运算符不太懂唉
[解决办法]& 是位运算中的 与运算(二目运算符),就是在将两个数转换成二进制数,相应位进行与运算,得出的数就是结果。
本例中 (number & 1),因为常量1只有一位是1,其他位全是0,所以最后的结果只能为0或1(根据number变量最后一位的值决定)