C语言中的右移位运算

标签: , ,

C语言中,在对unsigned类型的无符号值进行右移位时,左边空出的部分将用0填补;当对signed类型的带符号值进行右移位时,某些机器将对左边空出的部分用符号位填补(即“算数移位”),而另一些机器则对左边空出的部分用0填补(即“逻辑移位”)。

对有符号数进行右移位运算可能会导致可移植性问题,这个问题在《C陷阱与缺陷》中也有提到。

赞赏

微信赞赏支付宝赞赏

随机文章:

  1. GetDeviceCaps函数的困惑
  2. 48行计算24点C语言代码
  3. VB6拾遗:IUnknown接口与COM对象
  4. VB编程实现XP风格
  5. 文件属性中“大小”和“占用空间”的区别

留下回复