C++从零开始学(视频教学版)(第2版)
上QQ阅读APP看书,第一时间看更新

4.5 经典习题

循环移位:要求将a进行右循环移位,即a右循环移n位,将a中原来左边(16-n)位右移n位。现假设两个字节存放一个整数。

考虑如下:


(1)先将a右端的n位放到b中的高n位中,即b=a<<(16-n)。

(2)将a右移n位,其左边高位n位补0,即c=a>>n。

(3)将c与b进行按位或运算,即c=c|b。