Compartir a través de


Operador de complemento de uno: ~

~ cast-expression

Comentarios

El operador de complemento de uno (~), denominado a veces operador de “complemento bit a bit”, produce un complemento de uno bit a bit de su operando. Es decir, cada bit que es 1 en el operando es 0 en el resultado. Y a la inversa: cada bit que es 0 en el operando es 1 en el resultado. El operando del operador de complemento de uno debe ser de tipo entero.

Palabra clave del operador para ~

El operador compl es el equivalente de texto de ~. Hay dos maneras de tener acceso al operador compl en los programas: incluir el archivo de encabezado iso646.h o compilar con /Za.

Ejemplo

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

En este ejemplo, el nuevo valor asignado a y es el complemento de uno del valor sin signo 0xFFFF, or 0x0000.

La promoción de entero se realiza en operandos enteros y el tipo resultante es el tipo al que se promueve el operando. Vea Promociones de entero para obtener más información sobre cómo se realiza la promoción.

Vea también

Referencia

Expresiones con operadores unarios

Operadores de C++

Operadores de C++, precedencia y asociatividad

Conceptos

Operadores aritméticos unarios