C 如何确定一个整数中的0位是否变为另一个整数中的1
假设你有两个整数,A和BC 如何确定一个整数中的0位是否变为另一个整数中的1,c,int,bitwise-operators,bit,C,Int,Bitwise Operators,Bit,假设你有两个整数,A和B int A = 0b0011; int B = 0b1001; 如何确定a中的a0是否转到B中的a1 我不在乎a中的1是否转到B中的0,或者位是否保持不变,只要a0转到a1 我希望这里的输出是: result = 0b1000 异或 0011 1001 ---- 1010 结果食宿酒店 1010 1001 ---- 1000 Xor设置为A和B中不同的1位。但您只对A中的0'是B中的1'的情况感兴趣。要关闭这些位,只需使用B即可。您需要计算按位~A&B。请注意,
int A = 0b0011;
int B = 0b1001;
如何确定a中的a0
是否转到B中的a1
我不在乎a中的1
是否转到B中的0
,或者位是否保持不变,只要a0
转到a1
我希望这里的输出是:
result = 0b1000
异或
0011
1001
----
1010
结果食宿酒店
1010
1001
----
1000
Xor设置为A和B中不同的1位。但您只对A中的0'是B中的1'的情况感兴趣。要关闭这些位,只需使用B即可。您需要计算按位
~A&B
。请注意,您的按位操作应该使用无符号类型;看见