文章已更新,最新地址:http://www.fearlazy.com/index.php/post/125.html
获取x第n位的值:(x>>n) & 1
设置x第n位的值为a:x^=(x&(1<<n)) ^ (a<<n)
注:从低位到高位算,从第0位开始算。
例:21的二进制10101
int x = 21;
int ret = (x>>2) & 1;
ret 等于 1.
x^=(x&(1<<1)) ^ (1<<1);
设置x的第一位为1,二进制变位10111, x等于23.