Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé

Macros de l'entête <iso646.h>

La librairie iso646.h La librairie math.h


Accès rapide :
Entête à inclure
Macros disponibles
Exemple de code
Sujets connexes

Entête à inclure

#include <iso646.h>  // <ciso646> en C++

Macros disponibles

L'entête <iso646.h> ne déclare ni fonction ni type. Il définit uniquement les onze macros suivantes. Chacune d'elles est remplacée par le jeton C correspondant avant la compilation.

Macro Opérateur équivalent Utilisation classique
and && ET logique.
and_eq &= ET bit à bit avec affectation.
bitand & ET bit à bit.
bitor | OU bit à bit.
compl ~ Complément bit à bit.
not ! NON logique.
not_eq != Test de différence.
or || OU logique.
or_eq |= OU bit à bit avec affectation.
xor ^ OU exclusif bit à bit.
xor_eq ^= OU exclusif bit à bit avec affectation.

Exemple de code

Le bloc suivant montre l'usage des macros logiques et des macros bit à bit sur des valeurs simples.

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
#include <iso646.h>
#include <stdio.h>
#include <stdlib.h>

int main() {

    unsigned int value = 0xA;
    unsigned int mask = 0x3;

    if ( ( value bitand mask ) not_eq 0 and value not_eq 0 ) {
        value xor_eq mask;
    }

    printf( "value = %u\n", value );

    value and_eq 0xE;
    printf( "value = %u\n", value );

    value = compl value;
    printf( "value = %u\n", value );

    return EXIT_SUCCESS;
}
Macros de substitution d'operateurs

Sur une plate-forme courante où unsigned int est codé sur 32 bits, vous pouvez obtenir le résultat suivant.

value = 9
value = 8
value = 4294967287

Sujets connexes

<iso646.h>
<stdbool.h>
<stdint.h>


La librairie iso646.h La librairie math.h




Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé