#define set_bit(x,b) (x) |= (1U<<(b)) , 用宏定义一个类似函数的功能,即set_bit(x,b)的作用是将x的二进制数中的从左数第b位(最左端为第0位)设置为1, 比如set_bit(8,1)=10, 因为8的2进制为1000,第一位为0,设置成1后变为1010即10进制的10#define clear_bit(x,b) (x) &= ~(1U<<(b)) ,功能是清除x的第b位,即设置第b位为0,与set_bit的作用刚好相反