<<,>>运算符在循环中的作用是什么

时间:2019-12-13 10:42:16

标签: c++ c++11

我从未见过在循环中使用<<操作符。

请让我知道这些运算符<<,>>在此循环中扮演什么角色。

for(i=step << 1; i>=0;i-=2)             
        {
         // normal
         Normal(angles[i>>1]

      }

2 个答案:

答案 0 :(得分:6)

i >> 1是编写i / 2的愚蠢方式,假设i是适当的整数类型。

step << 1是编写step * 2的愚蠢方式,假设step是适当的整数类型。

答案 1 :(得分:2)

这些是bitwise shift operator

  

按位移位运算符按位移位运算符表达式具有   表格

     

lhs << rhs(1)

     

lhs >> rhs(2)

     

1)将lhs左移rhs位

     

2)将lhs右移rhs位

     

对于内置运算符,lhs和   rhs必须都具有整数或无作用域枚举类型。积分   提升在两个操作数上执行。返回类型是类型   积分提升后左操作数的大小。