C++ 关于位运算,一小行代码 求指教,谢谢。

来源:百度知道 编辑:UC知道 时间:2024/05/29 12:01:30
bShowMask &= ~(1<<SM_SHOW_ROOMTEMP);

我知道 a&=b 的意思是a=b&a 但是这个有一个 ~ 这个符号,这是什么意思。。不懂?

~取反 例如 原来2进制数为
10000000
取反后为 01111111

括号里面的1<<SM_SHOW_ROOMTEMP
SM_SHOW_ROOMTEMP应该是一个整形数
意思是把1左移 N 位
例如把1左移3位 就是 1000

~是按位取反的意思。比如100110,~之后是011001.应该是这个意思吧