bool是本机C类型吗?

华硕

我注意到Linux内核代码使用bool,但是我认为bool是C ++类型。布尔是标准C扩展名(例如ISO C90)还是GCC扩展名?

蚂蚁

bool 当前C-C99中存在,但C89 / 90中不存在。

在C99中,本机类型实际上称为_Boolbool而是在中定义的标准库宏stdbool.h(有望解析为_Bool)。类型的对象_Bool持有0或1,而truefalse也是来自的宏stdbool.h

注意,顺便说一句,这意味着C预处理器将解释#if true#if 0除非stdbool.h包含在内。同时,需要C ++预处理器才能本地识别true为语言文字。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章