ビットごとの XOR 代入演算子 (^=)

変数の値と式で指定された値のビットごとに排他的 OR を行い、その結果を変数に代入します。

result ^= expression

引数

  • result
    任意の数値変数を指定します。

  • expression
    任意の数式を指定します。

解説

この演算子は、result = result ^ expression と指定する場合とほぼ同じ結果になります。ただし、result は一度しか評価されません。

^= 演算子は、引数を適切なデータ型に変換します。 続いて、^= 演算子は 2 つの式の値を 2 進数形式で取り込み、それに対してビットごとに排他的 OR の演算を行います。 この演算の結果は次のようになります。

0101    (result)
1100    (expression)
----
1001    (result)

一方の式だけでビットの値が 1 の場合、演算結果のそのビットの値は 1 になります。 それ以外の場合は 0 になります。

必要条件

Version 1

参照

参照

ビットごとの XOR 演算子 (^)

代入演算子 (=)

概念

演算子の優先順位

演算子の一覧

ビット処理演算子による型の強制変換