1 << i
将1左移i
位,得到一个只有第i+1
位为1的数。n & ~(1 << i)
将n
的第i+1
位清零。m & (1 << i)
从m
中提取第i+1
位的值。(n & ~(1 << i)) | (m & (1 << i))
将n
的第i+1
位替换为m
的第i+1
位。- return n ^ (1 << i); 第i位取反
c++位操作
于 2024-08-24 10:19:55 首次发布
1 << i
将1左移 i
位,得到一个只有第 i+1
位为1的数。n & ~(1 << i)
将 n
的第 i+1
位清零。m & (1 << i)
从 m
中提取第 i+1
位的值。(n & ~(1 << i)) | (m & (1 << i))
将 n
的第 i+1
位替换为 m
的第 i+1
位。