【golang】位操作符

【golang】位操作符

golang和许多高级语言一样,提供了许多位操作符

<<       >>     &       &^      |      ^

其它的位操作符都很熟悉了,左移,右移,按位与,按位或,异或

多了一个不怎么熟悉的位运算符&^,这个在官方的说法是 and not,是按位置零

看一个小例子

x := 5
fmt.println(x &^ 1)

结果是多少呢,5的二进制表达

0000 0101

1的二进制表达

0000 0001

按位置零

    0000 0101
&^  0000 0001
-----------------   ---[10进制]--> 4
    0000 0100

参照数1的二进制,有1的位,都会被置为0

猜你喜欢

转载自blog.csdn.net/haodawang/article/details/79959218
今日推荐