3
我在這裏很困惑。查詢C#中是否設置了位的位置
如果我有一個數字,我們在這裏稱它爲16,並且我想檢查是否設置了一個特定的位。我會做以下幾點:
if (16 & (2^bitPosition) == (2^bitPosition))
對不對?
爲什麼然後,爲bitPosition = 2,該語句返回true?它不應該是錯誤的,因爲在這種情況下只有bitPosition = 4是真的嗎?
我的理解是:
Bit|Val
0 |1
1 |2
2 |4
3 |8
4 |16
5 |32
6 |64
7 |128
我從來沒有用這種事情以前曾和它的莫名其妙我。
^冪不通電的XOR運算符。 –
將'2 ^'更改爲'1 <<' –