Partager via


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 C++

Opérateurs, priorité et associativité C++

Concepts

Opérateurs arithmétiques unaires