-
@Anonymous, 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.
Тьі походу пьітаешься меня наебать -
@lurker, 1. В стандарте 23 года true и false это теперь настоящие константы, а не макросы.
2. Начиная с 2017 года в glibc это описано вот так:
#if defined __STDC_VERSION__ && __STDC_VERSION__ > 201710L
#define true ((_Bool)+1u)
#define false ((_Bool)+0u)
#else
#define true 1
#define false 0
#endif
То есть не просто "integer constant", а целочисленная константа типа "\_Bool".