-1

这是问题

  • 符号 - 如果为正则返回 1,如果为零则返回 0,如果为负则返回 -1
  • 法律行动:!~ & ^ | + << >>
  • 最大操作数:10
  • 评分:2

我想向右移动 31 以获取符号位,但从技术上讲,0 不能是正数和负数吗?

4

1 回答 1

2

您可以这样尝试32 bit int:-

(x >> 31) | (((~x + 1) >> 31) & 1)
于 2013-09-28T20:00:40.120 回答