读书人

置位!解决方法

发布时间: 2012-03-25 20:55:17 作者: rapoo

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

[解决办法]
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;
}

读书人网 >C++

热点推荐