Ответ 1
Эти типы данных были добавлены в C99. Поскольку bool
не был зарезервирован до C99, они используют ключевое слово _Bool
(которое было зарезервировано).
bool
является псевдонимом для _Bool
, если вы включили stdbool.h
. В принципе, включая заголовок stdbool.h
- это указание, что ваш код в порядке, когда идентификатор bool
является "зарезервированным", то есть ваш код не будет использовать его для своих целей (аналогично для идентификаторов true
и false
).