有时候用C语言开发需要操作某位,现在封装成宏定义,这样用起来就方便些.
#define GET_BIT(value,bit) ((value)&(1<<(bit)))>>bit //读取指定位
#define CPL_BIT(value,bit) ((value)^=(1<<(bit))) //取反指定位
#define SET0_BIT(value,bit) ((value)&=~(1<<(bit))) //把某个位置0
#define SET1_BIT(value,bit) ((value)|= (1<<(bit))) //把某个位置1
|