C 二元运算
C Binary operation
我试图在不使用循环的情况下一步解决 C 操作。
我有:
unsigned int8 Dummy = 0x3F;//This values are for reference only, so can be different
unsigned int8 Dummy_2 = 0x02;
Dummy = Dummy ^ Dummy_2;
现在虚拟 = 0x3D
我必须将 Dummy_2 中为 1 的虚拟位设置为 0。
我的代码第一次运行正常,但如果我执行代码两次,它会切换回 1。
我可以用一个循环来做到这一点,但为了代码的清晰起见,我试图在一行中做到这一点。
我会否定 (*) Dummy_2
然后将其用作掩码:
Dummy &= (~Dummy_2);
(*) 编辑:
正如busybee在评论中指出的那样,“否定”是一个算术术语。这里的正确术语是“补充 Dummy_2
.
我试图在不使用循环的情况下一步解决 C 操作。
我有:
unsigned int8 Dummy = 0x3F;//This values are for reference only, so can be different
unsigned int8 Dummy_2 = 0x02;
Dummy = Dummy ^ Dummy_2;
现在虚拟 = 0x3D
我必须将 Dummy_2 中为 1 的虚拟位设置为 0。 我的代码第一次运行正常,但如果我执行代码两次,它会切换回 1。 我可以用一个循环来做到这一点,但为了代码的清晰起见,我试图在一行中做到这一点。
我会否定 (*) Dummy_2
然后将其用作掩码:
Dummy &= (~Dummy_2);
(*) 编辑:
正如busybee在评论中指出的那样,“否定”是一个算术术语。这里的正确术语是“补充 Dummy_2
.