在C ++中创建一个特殊的位“0”

这个问题在这里已经有了答案:

  • 你如何设置,清除和切换一个位? 26个答案

  • 只需使用:

    p = p & ~(1u<<3);
    

    这里发生了什么?

     1. (1u<<3)       0...01000
     2. ~(1u<<3)      1...10111 // Invert the bits
     3. p & ~(1u<<3)  *****0*** // Here * means the bit representation of p
    

    这就是该位变为0的方式。
    希望能帮助到你 :)

    链接地址: http://www.djcxy.com/p/28791.html

    上一篇: Making a particular bit "0" in C++

    下一篇: Unset the rightmost set bit