一句话理解
右移:相当于除以 2 的幂(整数)。
为什么要学
去掉低位、折半。
讲解
x>>k 对非负整数等于 x/2^k 的下取整。负数右移是实现定义,竞赛少用负数右移。
例子
cout << (8 >> 2);
输出:
2
8/4=2。
常见错误
- 对负数右移当算术题。
- 右移当成循环位移。
第 217 课
右移:相当于除以 2 的幂(整数)。
去掉低位、折半。
x>>k 对非负整数等于 x/2^k 的下取整。负数右移是实现定义,竞赛少用负数右移。
cout << (8 >> 2);
输出:
2
8/4=2。
输出?
cout << (16 >> 3);
Ctrl / ⌘ + Enter 运行 · Tab 缩进
左右方向键也可翻课