stdbool.h — boolean type and values
#include <stdbool.h>
[CX]The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of POSIX.1-2024 defers to the ISO C standard.
The <stdbool.h> header shall define the following macros:
- bool
- Expands to _Bool.
- true
- Expands to the integer constant 1.
- false
- Expands to the integer constant 0.
- __bool_true_false_are_defined
Expands to the integer constant 1.The macros true, false and __bool_true_false_are_defined shall be suitable for use in #if preprocessing directives.
[OB]
An application can undefine and then possibly redefine the macros bool, true, and false.
None.
None.
The ability to undefine and redefine the macros bool, true, and false is an obsolescent feature and may be removed in a future version.
None.
First released in Issue 6. Included for alignment with the ISO/IEC 9899:1999 standard.
Austin Group Defect 1257 is applied, correcting a mismatch with the ISO C standard by adding the requirement for the integer-valued macros to be suitable for use in #if preprocessing directives.
Austin Group Defect 1302 is applied, adding OB shading to the statement that an application can "undefine and then possibly redefine the macros bool, true, and false".
return to top of page