2011-05-25 16 views
17

He aquí todos los archivos .h que he incluido hasta ahora, pero no tienen la definición de bool:¿Qué archivo de cabecera incluye para usar bool type en c en linux?

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

#include <sys/types.h> 
#include <sys/socket.h> 
#include <pthread.h> 
#include <netdb.h> 
#include <fcntl.h> 
#include <unistd.h> 
#include <event.h> 

¿Qué archivo Cómo define bool?

+1

Simplemente usaría 'int' como todos antes de C99 :) – pmg

Respuesta

23

Es parte de C99 y se define en POSIX definition stdbool.h.

+0

tere es una versión más reciente de la especificación POSIX en [http://pubs.opengroup.org/onlinepubs/9699919799/](http:// pubs.opengroup.org/onlinepubs/9699919799/). – pmg

12

bool es solo un macro que se expande a _Bool. Puede usar _Bool sin #include de forma muy similar a como puede usar int o double; es una palabra clave C99.

La macro se define en <stdbool.h> junto con otras 3 macros.

Las macros definidos son

  • bool: macro se expande a _Bool
  • false: macro se expande a 0
  • true: macro se expande a 1
  • __bool_true_false_are_defined: macro se expande a 1
-3

Archivo de cabecera para las operaciones booleanas n C es stdbool.h

+2

lee las otras respuestas primero –

-3

probar este archivo de cabecera en el código

stdbool.h 

Esto debe trabajar

+0

Esto solo repite las respuestas existentes. – Pang

+1

¿Cómo proporciona esto más información que otras respuestas de 5 años? –

+1

@PrafullaKumarSahu proporciona una respuesta (incluso si cree que es de baja calidad) –

6

#include <stdbool.h>

Para alguien como yo aquí para copiar y pegar.

Cuestiones relacionadas