Maison >développement back-end >C++ >Que signifient & et | en langage C ?

Que signifient & et | en langage C ?

下次还敢
下次还敢original
2024-05-02 17:21:32748parcourir

Les opérateurs & (AND au niveau du bit) et | (OU au niveau du bit) en langage C opèrent sur des bits binaires entiers bit par bit : le résultat de l'opération & est 1 si et seulement si les deux bits sont 1 ; vaut 1 si au moins un bit vaut 1.

Que signifient & et | en langage C ?

& et | opérateurs en langage C

& (bit au niveau du bit)

& opérateur AND les bits binaires de deux entiers donnés petit à petit, et le résultat est 1 quand et seulement si les deux les bits correspondants sont 1.

Syntaxe :

result = x & y;

Exemple :

int x = 6; // 0b110
int y = 5; // 0b101
int result = x & y; // 0b100 (4)

| (OU au niveau du bit)

| L'opérateur effectue un OU les bits binaires de deux entiers donnés petit à petit, et le résultat est 1 si et seulement si à au moins Un bit correspondant est 1.

Syntaxe :

result = x | y;

Exemple :

int x = 6; // 0b110
int y = 5; // 0b101
int result = x | y; // 0b111 (7)

Remarques :

  • & et | s'appliquent uniquement aux types entiers.
  • les opérateurs ont une priorité plus élevée que les opérateurs arithmétiques.
  • Les opérateurs au niveau des bits sont généralement utilisés pour les opérations sur les bits et les masques, par exemple :

    • Vérifiez si un certain bit est 1 : if ((x & (1 << n)) != 0) <code>if ((x & (1 << n)) != 0)
    • 清除某一位:x &= ~(1 << n)
    • 设置某一位:x |= (1 << n)
    • Effacer un certain bit : x &= ~(1 << n)
  • Définir un certain bit : x |= (1 << n )
🎜🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn