ビット単位否定演算子 ~

~ (ビット単位否定) 演算子は、オペランドのビット単位の補数を生成します。結果の 2 進表現では、すべてのビットは、オペランドの 2 進表現の同じビットの値と反対の値を 保持します。オペランドには、整数型が指定されている必要があります。 結果には、オペランドと同じ型が指定され、左辺値ではありません。

x が、10 進数の値 5 を表すと します。x の 16 ビットの 2 進表現は次のとおりです。
0000000000000101
~x の結果は、次のようになります (ここでは、16 ビット の 2 進数で表されます)。
1111111111111010

~ 文字は、3 文字表記文字の ??- によって 表されることに注意してください。

~0 の 16 ビットの 2 進表現は、次のとおりです。
1111111111111111

IBM 拡張 ビット単位否定演算子は、複素数型を扱うように拡張されています。複素数型では、この演算子は、虚数部の符号を反 転することにより、オペランドの複素数共役を計算します。