置位!解决方法

置位!如何将整数某一位置位?谢谢![解决办法]bool bit_on(int i, unsigned int pos){return i & (1 pos

置位!
如何将整数某一位置位?
谢谢!

[解决办法]
bool bit_on(int i, unsigned int pos)
{
return i &= (1 < < pos);
}

void flip(int& ri, unsigned int pos)
{
if (bit_on(ri, pos))
{
ri &= ~(1 < < pos);
}
else
{
ri |= (1 < < pos);
}
}

int main()
{
int i = 3;
flip(i, 0);
cout < < i < < endl;

return 0;
}