Operator negacji logicznej: !

Składnia

!wyrażenie rzutowe

Uwagi

Operator negacji logicznej (!) odwraca znaczenie operandu. Operand musi być typu arytmetycznego lub wskaźnika (lub wyrażenia, które daje w ocenie typ arytmetyczny lub wskaźnik). Operand jest niejawnie konwertowany na typ bool. Wynikiem jest true , jeśli przekonwertowany operand to false; wynikiem jest false , jeśli przekonwertowany operand to true. Wynik jest typu bool.

W przypadku wyrażenia ewyrażenie !e jednoargumentowe jest równoważne wyrażeniu (e == 0), z wyjątkiem sytuacji, w których są zaangażowane przeciążone operatory.

Operator — słowo kluczowe dla !

Język C++ określa not jako alternatywną pisownię dla elementu !. W języku C alternatywna pisownia jest dostarczana jako makro w nagłówku <iso646.h> . W języku C++, alternatywna pisownia jest słowem kluczowym; użycie iso646.h> lub równoważnego <<ciso646> języka C++ jest przestarzałe. W języku Microsoft C++ /permissive- opcja lub /Za kompilatora jest wymagana do włączenia alternatywnej pisowni.

Przykład

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

Zobacz też

Wyrażenia z operatorami jednoargumentowymi
Wbudowane operatory, pierwszeństwo i kojarzenie języka C++
Jednoargumentowe operatory arytmetyczne