方案一
int bitcount(unsigned x)
{
int i;
for (i = 0; x != 0; x >>= 1)
{
if (x & 1)
{
i++;
}
}
return i;
}
方案2(效率高一点)
int bitcount(unsigned x)
{
int i;
for (i = 0; x != 0; x &= x-1)
{
i++;
}
return i;
}