位操作
一类运算符以不寻常的方式操作数字。 这些运算符在位级别工作。 它们用于某些类型的低级任务,通常涉及设置或读取位标志。
表 34-5:位运算符
操作员说明
操作员说明
~按位否定。 取反一个数中的所有位。
<< 左移。 将数字中的所有位向左移动。
>> 右移。 将数字中的所有位右移。
& 按位与。 对两个数中的所有位执行 AND 运算。
| 按位或。 对两个数中的所有位执行 OR 运算。
^ 按位异或。 对两个数中的所有位执行异或运算。
请注意,除了按位否定之外,还有相应的赋值运算符(例如,<<=)。
在这里,我们将演示如何使用左位移运算符生成 2 的幂列表:
[我@linuxbox ~]$ 对于 ((i=0;i<8;++i)); 做回声 $((1<
1
2
4
8
16
32
64
128
[我@linuxbox ~]$ 对于 ((i=0;i<8;++i)); 做回声 $((1<
1
2
4
8
16
32
64
128