c++cbit-manipulationmaskingbit-masks

What is the purpose of "int mask = ~0;"?


I saw the following line of code here in C.

 int mask = ~0;

I have printed the value of mask in C and C++. It always prints -1.

So I do have some questions:


Solution

  • It's a portable way to set all the binary bits in an integer to 1 bits without having to know how many bits are in the integer on the current architecture.