整数を2で割る場合、どちらを使用するのが良いでしょうか? 質問する

整数を2で割る場合、どちらを使用するのが良いでしょうか? 質問する

整数を 2 で割るのに最適な方法はどれですか。その理由も教えてください。

テクニック1:

x = x >> 1;

テクニック2:

x = x / 2;

ここにx整数があります。

ベストアンサー1

実行しようとしている操作を最もよく表す操作を使用します。

  • 数値をビットのシーケンスとして扱う場合は、bitshift を使用します。
  • 数値として扱う場合は除算を使用します。

これらは完全に同等ではないことに注意してください。負の整数の場合は異なる結果が返される可能性があります。例:

-5 / 2  = -2
-5 >> 1 = -3

(イデオネ)

おすすめ記事