Opérateur de complément à 1 : ~
~ cast-expression
Notes
L'opérateur de complément à un (~), parfois appelé l'opérateur de complément de bits, génère un complément à un au niveau du bit de son opérande. Autrement dit, chaque bit qui est 1 dans l'opérande est 0 dans le résultat. Inversement, chaque bit qui est 0 dans l'opérande est 1 dans le résultat. L'opérande de l'opérateur de complément à un doit être un type intégral.
Mot clé Operator pour ~
L'opérateur compl est l'équivalent textuel de ~. Il existe deux moyens d'accéder à l'opérateur compl dans vos programmes : incluez le fichier d'en-tête iso646.h ou compilez avec /Za.
Exemple
// 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;
}
Dans cet exemple, la nouvelle valeur assignée à y est le complément à 1 de la valeur non signée 0xFFFF ou 0x0000.
La promotion intégrale est exécutée sur les opérandes intégraux et le type résultant est le type vers lequel l'opérande est promu. Pour plus d'informations sur la façon dont la promotion est effectuée, consultez Promotions intégrales.
Voir aussi
Référence
Expressions avec opérateurs unaires
Opérateurs, priorité et associativité C++