共用方式為


一補數運算子:~

~ cast-expression

備註

一補數運算子 (~),有時稱為「位元補數」運算子,它會產生其運算元的位元 1 補數。 也就是說,運算元中是 1 的每個位元,在結果中都是 0。 反之,運算元中是 0 的每個位元,在結果中都是 1。 一補數運算子的運算元必須是整數類資料類型。

~ 的運算子關鍵字

compl 運算子是 ~ 的文字對等用法。 有兩種方式可存取您程式中的 compl 運算子:包含標頭檔 iso646.h,或是使用 /Za (停用語言擴充功能) 進行編譯。

範例

// expre_One_Complement_Operator.cpp
// compile with: /EHsc
#include <iostream>

using namespace std;

int main () {
   unsigned short y = 0xFFFF;
   cout << hex << y << endl;
   y = ~y;   // Take one's complement
   cout << hex << y << endl;
}

在這個範例中,指派至 y 的新值是不帶正負號的值 0xFFFF 或 0x0000 的 1 補數。

整數運算元上會執行整數提升,且結果類型是運算元提升後的類型。 如需如何執行提升的詳細資訊,請參閱整數提升

請參閱

參考

具有一元運算子的運算式

C++ 運算子

C++ 運算子、優先順序和順序關聯性

概念

一元算術運算子