请问一个语句如何理解
//....
for (i = 0; i < 8; i++)
{
num += (a > > i) &0x01;//如何理解?
}
//....
[解决办法]
将a 右移,然后与0x01位与 ,把结果(只有0,1两种结果)加到num
这样 就算出了a,的低位字节上有多少1(二进制)了
[解决办法]
int n = (a > > i); //右移i位
n &= 0x01; //n是否为奇数
num += n;
[解决办法]
a右移i位后所得的结果,只取其后一位加到num上。