逻辑操作符和位操作符

来源:互联网 发布:流水账软件 编辑:程序博客网 时间:2024/05/19 15:45
(1)逻辑操作符:逻辑与(&&)、逻辑或(||)、逻辑非(!)
          例如:
          expr1&&expr2;//logical AND
          expr1||exper2// logical OR
          仅当expr1不能确定表达式的值时,才会求解exper2。
(2)位操作符
          位操作符使用整型的操作数。位操作符将其整型操作符视为二进制位的集合,为每一位提供检验和设置功能。(对于位操作,由于系统不确定如何处理其操作数的符号位,所以强烈建议使用unsigned整型操作数。)
          1.位求反(~):将操作数的每一个二进制位取反。
          2.移位操作符:<<和>>操作符提供移位操作,其右操作数标注要移动的位数(右操作数不可以是负数,而且必须严格小于左操作数位数的值)。
            这两种操作符将其左操作数的各个位向左(<<)或向右(>>)移动若干位(移动位数由其右操作数指定),从而产生新的值,并丢弃移出去的位。
           左移操作符(<<)在右边插入0以补充空位。对于右移操作符(>>),如果操作数是无符号整数,则从左边开始插入0;如果是有符号数,则插入符号位的副本或者0值,如何选择须依据具体的实现而定。
           3.位与操作(&):需要两个操作数,在每个位的位置,如果两个操作数对应的位都为1,则操作结果中该位为1,否和为0。
           4.位异或(^):需要两个操作数,需要两个操作数在每个位置对应的位只有一个为1,则操作结果中该位为1;否则为0。
           5.位或(|):需要两个操作数,在每个位的位置,如果两个操作数对应的位有一个或者两个都为1,则操作结果为1,否则为0。
原创粉丝点击