在c里面 x*=a+b运算是怎么算的啊?还有x&x-1 x=x&(x-1)

日期:2021-11-18 22:23:14 人气:1

在c里面 x*=a+b运算是怎么算的啊?还有x&x-1 x=x&(x-1)

根据运算符的优先级,*= 属于赋值运算符,优先级比 + 低
所以 x*=a+b 相当于 x*=(a+b) ;
*= 运算符懂吧,a*=b 相当于 a = (a*b);
按位与运算符“&”的优先级低于减法运算法,所以 x&x-1和x&(x-1)是一样的;
& 运算是按位与,将 x 和 x-1 都转化为二进制形式,一位一位的进行与运算,
1&1 = 1; 1&0 = 0; 0&1 = 0; 0&0 = 0;
例如x = 45
    A+
热门评论