移之前 `a&1`
by zhy137036 @ 2020-10-18 11:32:31
直接%2,再>>,行吗?
by ChangYiMing @ 2020-10-18 11:32:55
@[zhy137036](/user/178294) 代码能给实现一下吗?比如我想要sum右移1并且获取到那个移出的数字
by fvv3183 @ 2020-10-18 11:33:39
先右移再左移再相减?
$1011>>1=101$
$101<<1=1010$
$1011-1010=1$
by TKater_yzt @ 2020-10-18 11:34:35
```
int shr(int sum){
std::cout << sum&1 << ' ';
sum>>=1;
return sum;
}
```
by impuk @ 2020-10-18 11:34:50
@[一只爬行者](/user/279700) 请问,如果想知道sum中1的个数(二进制)是否是2,该怎样做?
by fvv3183 @ 2020-10-18 11:39:54
@[Love_Life](/user/308465)
```
bool _(int sum){
sum-=sum&-sum;
sum-=sum&-sum;
return sum!=0;
}
```
by impuk @ 2020-10-18 11:41:55
啊 不对 是
```__builtin_popcount(i)```
by Demoe @ 2020-10-18 11:43:22
@[Daniel_Jiang](/user/83999) 您那个跑的比较慢吧/yun
by impuk @ 2020-10-18 11:43:27
没事 能跑就行(确信)
by Demoe @ 2020-10-18 11:43:51