我如何设置C中整数的最低有效位

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

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

  • 要将第0位设置为1,请使用

    int_var | 1
    

    要将位0重置为零,请使用

    int_var & ~1
    

    您的示例中的操作看起来并不一致:

    10000011    
    10000010    & ~1
    00000001    xor
    
    00001011    
    00001011    nop
    00000000    xor
    
    01110011   
    01110010    & ~1
    00000001    xor
    
    11101100    
    11101101    & ~1
    00000001    xor
    
    11110101    
    11110100    & ~1
    00000001    xor
    
    01001011    
    01001010    & ~1
    00000001    xor
    
    01001010
    01001010    nop
    00000000    xor
    
    01110100
    01110100    nop
    00000000    xor
    
    链接地址: http://www.djcxy.com/p/28815.html

    上一篇: How can I set the least significant bit of an integer in C

    下一篇: Why must I use the ~ operator when clearing a bit?