Quel est le type de données booléen C99 et comment l'utiliser?
Réponses:
Inclure l'en- <stdbool.h>
tête
#include <stdbool.h>
int main(void){
bool b = false;
}
Macros true
et false
développez respectivement vers 1
et 0
.
Section 7.16
Type et valeurs booléennes< stdbool.h >
- 1 L'en-tête
<stdbool.h>
dé fi nit quatre macros.- 2 La macro
- bool se développe en _Bool.
- 3 Les trois macros restantes conviennent pour une utilisation dans les directives de prétraitement #if. Elles sont
- true: qui se développe jusqu'à la constante entière 1,
- false: qui se développe jusqu'à la constante entière 0, et
- __bool_true_false_are_defined qui se développe jusqu'à la constante entière 1.
- 4 Nonobstant les dispositions de 7.1.3, un programme peut annuler et peut-être redéfinir les macros bool, true et false.
Veuillez consulter la réponse ici sur ce fil associé trouvé sur DaniWeb .
extrait et cité ici pour référence pratique: -
_Bool : type booléen de C99. L'utilisation directe de _Bool n'est recommandée que si vous gérez un code hérité qui définit déjà des macros pour bool, true ou false. Sinon, ces macros sont standardisées dans l'en-
<stdbool.h>
tête. Incluez cet en-tête et vous pouvez utiliser bool comme vous le feriez en C ++.
#include <stdio.h>
#include <stdbool.h>
int main ( void )
{
bool b = true;
if ( b )
printf ( "Yes\n" );
else
printf ( "No\n" );
return 0;
}
_Bool
existe avec bool
. Très utile pour le comprendre.
_Bool
(par affectation, conversion , etc.) se fait en fait en préfixant l'expression avec!!
.