C语言位操作中指定的某一位数置0、置1、取反

一、指定的某一位数置1

#define SET_BIT(x,y) x|=(1<<y)

二、指定的某一位数置0

#define CLEAR_BIT(x,y) x&=~(1<<y)

三、指定的某一位数取反

#define REVERSE_BIT(x,y) x^=(1<<y)

三、获取的某一位的值

#define GET_BIT(x,y) ((x) >> (y)&1)