清理一下
C 风格的位操作
可以使用按位 AND 运算符(&
)清除一个位。
// Bit x will be cleared
number &= ~(1LL << x);
使用 std::bitset
reset(x)
或 set(x,false)
- 清除位置 x
的位。
std::bitset<5> num(std::string("01100"));
num.reset(2); // num is now 01000
num.reset(0); // num is still 01000
num.set(3,false); // num is now 00000