想知道某一位是否為1,只需和當前位對應的2的冪進行按位與運算即可。
如下示例,可以知道第6位是1,同理可知其他位是否為1,累加就能得到1的個數:
100101001
000100000
int cnt = 0;
while (x) {
cnt += x&1;
x >>= 1;
}
想知道某一位是否為1,只需和當前位對應的2的冪進行按位與運算即可。
如下示例,可以知道第6位是1,同理可知其他位是否為1,累加就能得到1的個數:
100101001
000100000
int cnt = 0;
while (x) {
cnt += x&1;
x >>= 1;
}
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。