int myColor =0;
bool containsRed;
myColor = myColor / 2;
myColor = myColor / 4;
containsRed = {myColor & 4} ==4
为什么结果会是4呢 不解 是入门经典里63页的内容 说是“红色位” 不懂
bool containsRed;
myColor = myColor / 2;
myColor = myColor / 4;
containsRed = {myColor & 4} ==4
为什么结果会是4呢 不解 是入门经典里63页的内容 说是“红色位” 不懂
{myColor & 4} ==4 就是看myColor 的第2位是否为1
{}这个标示符在程序中不报错么?
&:按位与运算
containsRed 的值我感觉是false
我觉得你的最后一行代码要改成
containsRed=(myColor & 4)==0;
最后的结果是 false
最后一行语句的意思就是 0&4 的值是不是4
4的二进制为100 也就是 000 & 100 结果是不是100
很显然结果是000
是这样:
containsRed =(myColor &4) ==4;
containsRed 赋值:(myColor &4) ==4