I have to count the length of binary representation of an integer. I've tried something like this:
int binaryLength(int n)
{
int i = 32;
while (i > 0)
{
if (n >> i & 1) break;
else i--;
}
return i;
}
But when i have number like 9 (1001), this function returns me 32.