Operador lógico de negación: !
! cast-expression
Comentarios
El operador de negación lógico (!) invierte el significado del operando. El operando debe ser de tipo aritmético o de puntero (o una expresión que se evalúe como un tipo aritmético o de puntero). El operando se convierte implícitamente al tipo bool. El resultado es true si el operando convertido es false; el resultado es false si el operando convertido es true. El resultado es de tipo bool.
Para una expresión e, la expresión unaria **!**e es equivalente a la expresión **(**e == 0), excepto si intervienen operadores sobrecargados.
Palabra clave del operador para !
El operador not es el equivalente de texto de ! Hay dos maneras de acceder al operador not en los programas: incluir el archivo de encabezado iso646.h o compilar con la opción /Za del compilador (deshabilitar extensiones de lenguaje).
Ejemplo
// expre_Logical_NOT_Operator.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
int main() {
int i = 0;
if (!i)
cout << "i is zero" << endl;
}
Vea también
Referencia
Expresiones con operadores unarios
Operadores de C++, precedencia y asociatividad