int c = 0; while( x ) { c++; x = (x & (x - 1)); } 该方法比直接移动的次数肯定要少。效率更高! 转载于:https://www.cnblogs.com/mdumpling/p/8205214.html