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 :

Notre page Facebook
Notre groupe Facebook

Accueil KooR.fr
 |_ 
Accueil Langage C
    |_ 
<stdbool.h>

Les booléens en C

Entête à  inclure

#include <stdbool.h>  // <cstdbool> en C++

Type bool

#define bool unsigned int
#define true 1
#define false 0

Permet de définir un pseudo type booléen (en fait un entier non signé) afin d'améliorer la lisibilité de vos signatures de fonctions et du typage de vos variables. Ainsi, les fonctions manipulant des booléens apparaîtront avec plus d'évidences.

Il est a noter que cette entête a été introduite avec C ISO 1999 (C99). Il est aussi a noter qu'en C++ cette entête est inutile et neutre (par le jeu subtil de la compilation conditionnelle) car ces trois éléments sont intrinsèque à ce langage.

Exemple de code

#include <stdbool.h>     
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main( int argc, char * argv[] ) {
    
    bool mustExit = false;
     
    do {
        printf( "Enter a command: " );
        fflush( stdout );
        
        char command[20];
        scanf( "%s", command );
        
        if ( strcmp( command, "exit" ) == 0 ) {
            mustExit = true;
        } else {
            printf( "Executing %s command\n", command );
        }
        
    } while( mustExit == false ); 

    return EXIT_SUCCESS;
}

/*

To build and run this sample with gcc :

[Desktop]$ gcc -std=c99 Sample.c -o Sample
[Desktop]$ Sample 
Enter a command:

*/