计算一个整数的二进制中1的个数

时间:2014-06-07 10:33:11   收藏:0   阅读:181
bubuko.com,布布扣
 1 #include<iostream>
 2 #include<ctime>
 3 using namespace std;
 4 
 5 /*计算一个整数的二进制中1的个数*/
 6 int NumberOf1( int n) {
 7     int count = 0;
 8 
 9     while (n) {
10     
11         ++count;
12         n = (n - 1) & n;
13     }
14     return count;
15 }
16 int main()
17 {
18     cout << NumberOf1(7) << endl;
19     printf("%0x\n",7);
20     printf("%0x\n",-7);//fffffff9,负数用补码表示,补码是反码加1
21     printf("%0x\n",-8);//fffffff8
22     return 0;
23 }
bubuko.com,布布扣

 

计算一个整数的二进制中1的个数,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!