Play and learn 300 000+ tabs online

Sunday, July 11, 2010

Setting Clearing Resetting Bits in C

Setting a bit

Use the bitwise OR operator (|) to set a bit.

 number |= 1 << x;

That will set bit x.

Clearing a bit

Use the bitwise AND operator (&) to clear a bit.

 number &= ~(1 << x);

That will clear bit x. You must invert the bit string with the bitwise NOT operator (~), then AND it.

Toggling a bit

The XOR operator (^) can be used to toggle a bit.

 number ^= 1 << x;

That will toggle bit x.

Checking a bit

You didn't ask for this but I might as well add it.

To check a bit, AND it with the bit you want to check:

 bit = number & (1 << x);

That will put the value of bit x into the variable bit.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.