Risposte:
Includi <stdbool.h>
intestazione
#include <stdbool.h>
int main(void){
bool b = false;
}
Macro true
ed false
espandere rispettivamente in 1
e 0
.
Tipo e valori booleani della sezione7.16
< stdbool.h >
- 1 L'intestazione
<stdbool.h>
definisce quattro macro.- 2 La macro
- bool si espande in _Bool.
- 3 Le restanti tre macro sono adatte per l'uso nelle direttive di pre-elaborazione #if. Loro sono
- true: che si espande alla costante intera 1,
- false: che si espande alla costante intera 0 e
- __bool_true_false_are_defined che si espande alla costante intera 1.
- 4 Nonostante le disposizioni di 7.1.3, un programma può annullare la definizione e forse quindi ridefinire le macro bool, true e false.
Si prega di controllare la risposta qui su questo thread correlato trovato su DaniWeb .
qui estratto e citato per comodo riferimento: -
_Bool : tipo booleano di C99. L'utilizzo diretto di _Bool è consigliato solo se si mantiene un codice legacy che definisce già macro per bool, true o false. Altrimenti, quelle macro sono standardizzate
<stdbool.h>
nell'intestazione. Includi quell'intestazione e puoi usare bool proprio come faresti in 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
esiste insieme a bool
. Molto utile per capirlo.
_Bool
(per assegnazione, cast, ecc.) Avviene effettivamente anteponendo all'espressione!!
.