假设我有以下内容
int susan = 2; //0010
int bob = 4; //0100
int karen = 8; //1000
我将10(8 + 2)作为参数传递给方法,我想对此进行解码以表示susan和karen
我知道10是1010
但是我该怎么做才能看是否检查了特定的位
if (condition_for_karen) // How to quickly check whether effective karen bit is 1
现在我所能想到的就是检查我通过的号码是否
14 // 1110
12 // 1100
10 // 1010
8 // 1000
当我在现实世界中有大量实际位时,这似乎是不切实际的,有什么更好的方法使用遮罩来检查我是否满足卡伦的条件?
我可以想到先左移然后再右移然后再清除以清除除我感兴趣的位以外的其他位,但这似乎过于复杂。
达令说
潇潇雨雨
相关分类