Megosztás a következőn keresztül:


Az egyik komplementer operátora: ~

Szemantika

~ cast-expression

Megjegyzések

A komplement operátor (~más néven bitenkénti komplementer operátor) bitenkénti kiegészítést eredményez az operandushoz. Ez azt jelenti, hogy az operandus 1 bitje 0 az eredményben. Ezzel szemben az operandus minden 0 bitje 1 az eredményben. A komplementer operátorhoz tartozó operandusnak szerves típusnak kell lennie.

Operátor kulcsszó a következőhöz: ~

A C++ a alternatív helyesírását ~adja megcompl. A C-ben az alternatív helyesírás makróként van megadva az <iso646.h> fejlécben. A C++-ban az alternatív helyesírás egy kulcsszó; <az iso646.h> vagy a C++ egyenértékű <ciso646> használata elavult. A Microsoft C++-ban az alternatív helyesírás engedélyezéséhez a /permissive- fordító vagy /Za a fordító beállítás szükséges.

példa

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

Ebben a példában a hozzárendelt y új érték az aláíratlan érték 0xFFFF vagy 0x0000 kiegészítése.

Az integrál előléptetés az integrál operandusokon történik. Az operandus előléptetett típusa az eredményül kapott típus. Az integrált előléptetésről további információt a Standard konverziók című témakörben talál.

Lásd még

Nem szereplő operátorokkal rendelkező kifejezések
C++ beépített operátorok, elsőbbség és asszociativitás
Nem aritmetikai operátorok