1 int GetBit(char c,int i)//取c的第i位 2 { 3 return ( c >> i ) & 1; 4 } 5 void SetBit(char & c,int i, int v)//设置c的第i位为v,v是0或1 6 { 7 if( v ) 8 c |= ( 1 << i); 9 else 10 c &= ~( 1 << i); 11 } 12 void Flip(char & c, int i) //将c的第i位为取反 13 { 14 c ^= ( 1 << i); 15 }