Bitwise operator for simply flipping all bits in an integer?

Tags: , , , ,

I have to flip all bits in a binary representation of an integer. Given:


The output should be


What is the bitwise operator to accomplish this when used with an integer? For example, if I were writing a method like int flipBits(int n);, what would go in the body? I need to flip only what’s already present in the number, not all 32 bits in the integer.


The ~ unary operator is bitwise negation. If you need fewer bits than what fits in an int then you’ll need to mask it with & after the fact.

Source: stackoverflow