ビット単位排他 OR 演算子 (EBCDIC では、^ 記号は ¬ 記号で 表します) は、第 1 オペランドの各ビットと第 2 オペランドの対応するビットを比較します。 ビットが両方とも 1 か、両方とも 0 の場合、 対応する結果ビットを 0 にセットします。それ以外の場合は、 対応する結果ビットを 1 にセットします。
オペランドは両方とも、整数型または列挙型でなければなりません。各オペランドには、通常の算術変換が実行されます。 結果には、変換されたオペランドと同じ型が保持されます。結果は、左辺値ではありません。
ビット単位排他 OR 演算子には、結合属性と可換属性の両方があるので、コンパイラーは、 複数のビット単位排他 OR 演算子を含む式の中でオペランドの再配置を行うことができます。 ^ 文字は、3 文字表記文字の ??' によって表されることに注意 してください。
次の例では、16 ビットの 2 進数で表された a と b の
値と、a ^ b の結果を示します。
a のビット・パターン | 0000000001011100 |
b のビット・パターン | 0000000000101110 |
a ^ b のビット・パターン | 0000000001110010 |
関連参照