ビット演算
- このような短い関数では、マジック定数を使用しても問題はないだろう。そうしないと、コードが複雑になりすぎる可能性がある。
型は符号なし型であるため、左側から値に挿入されるビットはすべて値0になる。そのため、24ビットシフトされる値をマスクする必要はない。さらに、0ビットシフトは効果がないため、その操作も削除できる。
- 各オクテットを IPv4 アドレスの適切な位置にシフトしてから、これらの式を"OR"で結合することができる。
- 次の方法は、すべてのビットが1の値から始める。まず、値を右にシフトして上位ビットを0にしてから、左にシフトして下位ビットを0にする。
uint.max
は、すべてのビットが1の値である。あるいは、0の補数である値から計算を開始することもできる。これは、uint.max
と同じだ。