当前位置: 代码迷 >> VC >> C++有关问题
  详细解决方案

C++有关问题

热度:10193   发布时间:2013-02-25 00:00:00.0
C++问题
今天看到一段C++代码,搞不明白这句是什么意思!请大家帮忙解释下,我不是做C++的
就是这段代码 (num << 5)

------解决方案--------------------------------------------------------
num的二进制左移5位?
------解决方案--------------------------------------------------------
左移5位相当于乘以2的5次方(32)。
------解决方案--------------------------------------------------------
为什么要有这样的操作呢因为,我们知道计算机里的数据都是2进制的,乘以,除以2的n次方可以用硬件指令优化。所以就有了左移,右移,位与,位或,异或等操作
这样的操作比直接乘以性能要高几千倍。
  相关解决方案