左移和右移操作在正整数上使用负数

时间:2012-07-04 11:09:01

标签: c

  

可能重复:
  Left shifting with a negative shift count

在16位编译器上,为什么32<<-332>>-1会导致0? 这种行为的主要原因是什么

1 个答案:

答案 0 :(得分:2)

来自K&amp; R:

班次运营商&lt;&lt;和&gt;&gt;执行他们的左右移位 左操作数由右操作数给出的位位数, 必须是非负面的