Linux-c对一个十六进制数的某一位取反
1 enum SWITCH_FLAG { 2 SWITCH_ALL_FLAG = 0, 3 SWITCH_WEB_FLAG = 1, 4 …… 5 } 6 7 unsigned int switch_by_bit_value = 0x7FFFFFFF; 8 9 void switch_set_bit(int*a,int position,int flg) 10 { 11 int b=1<<position; 12 if(flg==0){ 13 *a&=~b; 14 } 15 else{ 16 *a|=b; 17 } 18 } 19 20 switch_set_bit(&switch_by_bit_value,SWITCH_WEB_FLAG,1); 21 switch_set_bit(&switch_by_bit_value,SWITCH_WEB_FLAG,0);