Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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