哪个是将整数除以 2 的更好选择?
以下哪种技术是将整数除以 2 的最佳选择,为什么?
Which of the following techniques is the best option for dividing an integer by 2 and why?
技术一:
x = x >> 1;
技术二:
x = x / 2;
这里x
是一个整数.
推荐答案
使用最能描述您要执行的操作的操作.
Use the operation that best describes what you are trying to do.
- 如果您将数字视为位序列,请使用 bitshift.
- 如果您将其视为数值,请使用除法.
请注意,它们并不完全等效.对于负整数,它们可以给出不同的结果.例如:
Note that they are not exactly equivalent. They can give different results for negative integers. For example:
-5 / 2 = -2
-5 >> 1 = -3
(ideone)
相关文章