1 << 5 -> 100000
现在flag 8位,第三位为1为彩色,为0为黑白
现在希望清除第三位
#define Bit_Color (1 << 2) #define Clear_Color ((~Bit_Color) & 0xFF)
对Bit_Color取非的结果是机器字长多少位,对多少位取非,与0xFF,为截取低8位
#define Clear_Color ((~0xFF) | BitColor)
0xFF对于32位机器而言,是0x000000FF,并不指字长
原文:https://www.cnblogs.com/toughcactus/p/14683842.html