求數二進制值中包含 1 的個數

遇到好幾次了,代碼中出現的,之前沒見過還挺繞的。

 

#include <stdio.h>

void main(){
	int a=273;
	int count=0;

	while(a){
		a=a&(a-1);
		count++;
	}

	printf("%d\n",count);
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章