Partilhar via


Operador de complemento individual: ~

~ cast-expression

Comentários

O operador de complemento de um (~), às vezes chamado de operador de “complemento bit a bit”, gera um complemento bit a bit de seu operando. Ou seja, cada bit que é 1 no operando, é 0 no resultado. De forma análoga, cada bit que é 0 no operando, é 1 no resultado. O operando para o operador de complemento de um deve ser um tipo integral.

Palavra-chave do operador para ~

O operador compl é o equivalente de texto de ~. Há duas maneiras de acessar o operador compl nos programas: incluindo o arquivo de cabeçalho iso646.h ou compilando com /Za.

Exemplo

// 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;
}

Nesse exemplo, o novo valor atribuído a y é o complemento de um do valor sem sinal 0xFFFF, ou 0x0000.

A promoção de integral é executada em operandos integrais, e o tipo resultante é o tipo para o qual o operando é promovido. Consulte Promoções de integral para obter mais informações sobre como a promoção é feita.

Consulte também

Referência

Expressões com operadores unários

Operadores C++

Operadores, precedência e associatividade C++

Conceitos

Operadores aritméticos unários