为什么C标准的bool不是bool_t?

Tob*_*oby 3 c types boolean

C 为布尔类型stdbool.h添加a 。#define_Bool

我知道使用a #define而不是a typedef允许#undef-ing遗留代码冲突。但是为什么不使用bool_t(与其他标准类型匹配)代替bool?是_t用于typedef唯一的类型?

我问,因为我的工作平台添加的typedef bool_t来_Bool。

编辑:已经正确指出,以下内容可能是基于意见的,因此,将其视为上述主要问题的唯一原因。

所以我想知道我应该使用还是继续使用bool?我有点像前者使布尔标准类型形式与其他标准类型匹配的方式。

oua*_*uah 5

C引入了C99标准的bool宏(扩展为_Bool)。他们可能选择了该名称,bool而不是bool_t因为C ++在1998年将其布尔类型命名为boolean类型bool。在C ++ 98中,所有整数类型(wchar_tC90中已有的类型除外)都不使用_t后缀。