比如这样:
int a=1;
int b=2;
a|=b;
这样的运算结果是什么??
如果b是0,运算结果又是什么??
谢谢了先
这是位运算,|是按位或
1的二进制为00000001
2的二进制为00000010
按位或后就是00000011,十进制就是3
如果b是0,那就是00000000,和a运算后就是00000001也就是十进制的1
1的二进制为00000001
2的二进制为00000010
按位或后就是00000011,十进制就是3
如果b是0,那就是00000000,和a运算后就是00000001也就是十进制的1
温馨提示:答案为网友推荐,仅供参考
第1个回答 2009-06-04
这是进行或运算
其中还有与和非
或运算的规则就是:参与运算的数字,低位对齐,高位不足的补零,对应的二进制位有一个为1则为1,否则为0.适用场合:将数字中某一位或某些位修改成1.因为1和任何数或都是1
看到规则也就不难理解了,另外要记住二进制数对应十进制数的规则
1是00000001 2是00000010 3是00000011 4是00000100 5是00000101
6是00000110 7是00000111 8是00001000 9是00001001 这样你自己应该会算了吧 ***另外的还要提的就是15对应的是1111***
其中还有与和非
或运算的规则就是:参与运算的数字,低位对齐,高位不足的补零,对应的二进制位有一个为1则为1,否则为0.适用场合:将数字中某一位或某些位修改成1.因为1和任何数或都是1
看到规则也就不难理解了,另外要记住二进制数对应十进制数的规则
1是00000001 2是00000010 3是00000011 4是00000100 5是00000101
6是00000110 7是00000111 8是00001000 9是00001001 这样你自己应该会算了吧 ***另外的还要提的就是15对应的是1111***
第2个回答 2009-06-04
逻辑运算
与&,或|,非^
a|=b就是a=a|b;
如果b是0,结果还是a喽
与&,或|,非^
a|=b就是a=a|b;
如果b是0,结果还是a喽