C99的布尔数据types?

什么是C99布尔数据types以及如何使用它?

包含<stdbool.h>标题

 #include <stdbool.h> int main(void){ bool b = false; } 

macros的true分别扩展到10

7.16布尔types和值< stdbool.h >

  • 1头<stdbool.h>四个macros。
  • 2macros
    • 布尔扩展到_Bool。
  • 3其余的三个macros适用于#if预处理指令。 他们是
    • true:展开为整数常量1,
    • false:展开为整数常量0,而
    • __bool_true_false_are_defined展开为整数常量1。
  • 4尽pipe有7.1.3的规定,程序可能会取消并且可能重新定义macros指令,正确和错误。

请查看DaniWeb上的相关主题的答案。

提取和引用这里为便于参考: –


在c99中使用新的关键字

_Bool :C99的布尔types。 只有在维护已经为bool,true或false定义macros的遗留代码时,才推荐直接使用_Bool。 否则,这些macros在<stdbool.h>头文件中被标准化。 包括这个头文件,你可以像使用C ++一样使用bool。

 #include <stdio.h> #include <stdbool.h> int main ( void ) { bool b = true; if ( b ) printf ( "Yes\n" ); else printf ( "No\n" ); return 0; }