논리 부정 연산자: !

구문

!cast-expression

설명

논리 부정 연산자(!)는 해당 피연산자의 의미를 반대로 바꿉니다. 피연산자는 산술 형식, 포인터 형식 또는 산술/포인터 형식으로 계산되는 식이어야 합니다. 피연산자는 암시적으로 bool 형식으로 변환됩니다. 변환된 피연산자가 false이면 결과는 true입니다. 변환된 피연산자가 true이면 결과는 false입니다. 결과는 bool 형식입니다.

e의 경우 단항 식 !e는 오버로드된 연산자가 관련된 경우를 제외하고 식 (e == 0)과 동등합니다.

!에 대한 연산자 키워드

C++에서는 !에 대한 대체 맞춤법으로 not을 지정합니다. C에서는 대체 맞춤법이 <iso646.h> 헤더에 매크로로 제공됩니다. C++에서 대체 맞춤법은 키워드입니다. <iso646.h> 또는 C++에 해당하는 <ciso646>은 더 이상 사용되지 않습니다. Microsoft C++에서는 대체 맞춤법을 사용하도록 설정하려면 /permissive- 또는 /Za 컴파일러 옵션이 필요합니다.

예시

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

참고 항목

단항 연산자가 있는 식
C++ 기본 제공 연산자, 우선 순위 및 결합성
단항 산술 연산자