int count = 0;
for (int j = 0; j < n; ++j) {
if (num >> j & 1)
count++;
}
假如一个num是个int型,n取32,将num左移j位数后,此时的第j位正在第一位,再与1相与,即可得到该位置的二进制数。
int count = 0;
for (int j = 0; j < n; ++j) {
if (num >> j & 1)
count++;
}
假如一个num是个int型,n取32,将num左移j位数后,此时的第j位正在第一位,再与1相与,即可得到该位置的二进制数。