一句话理解
清除第 k 位:x &= ~(1<<k)。
为什么要学
关上某个开关。
讲解
取反掩码后只在第 k 位为 0,与完该位变 0。用 int 时 ~ 要注意符号,常用 ~ (1u<<k) 或等价写法。
例子
x &= ~(1 << k);
只把第 k 位打成 0。
常见错误
- 写成 x &= (1<<k),那是只保留这一位。
- 用减法 1<<k 当那位本来是 0 时会借位。
第 220 课
清除第 k 位:x &= ~(1<<k)。
关上某个开关。
取反掩码后只在第 k 位为 0,与完该位变 0。用 int 时 ~ 要注意符号,常用 ~ (1u<<k) 或等价写法。
x &= ~(1 << k);
只把第 k 位打成 0。
x &= (1<<k) 是清除第 k 位。
Ctrl / ⌘ + Enter 运行 · Tab 缩进
左右方向键也可翻课