C99 _Bool 数据类型是什么以及如何使用它?

问题描述 投票:0回答:2

什么是 C99

_Bool
数据类型以及如何使用它?

c types boolean c99
2个回答
124
投票

包含

<stdbool.h>
标题

#include <stdbool.h>

int main(void){
  bool b = false;
}

true
false
分别扩展为
1
0

部分

7.16
布尔类型和值
< stdbool.h >

  • 1 标题
    <stdbool.h>
    定义了四个宏。
  • 2 宏观
    • 布尔 扩展为 _Bool。
  • 3 其余三个宏适合在 #if 预处理指令中使用。他们 是
    • true :扩展到整数常量 1,
    • false:扩展为整数常量 0,并且
    • __bool_true_false_are_defined 它扩展到整数常量 1。
  • 4 尽管有 7.1.3 的规定,程序可能会取消定义,然后也许 重新定义宏 bool、true 和 false。

61
投票

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

摘录于此,方便参考:-


c99中新关键字的使用

_Bool:C99 的布尔类型。仅当您满足以下条件时才建议直接使用 _Bool 维护已经存在的遗留代码 定义 bool、true 或的宏 错误的。否则,这些宏是 标准化于

<stdbool.h>
标头。包含该标题和您 可以像你一样使用 bool C++。

#include <stdio.h>
#include <stdbool.h>

int main ( void )
{
  bool b = true;

  if ( b )
    printf ( "Yes\n" );
  else
    printf ( "No\n" );

  return 0;
}

© www.soinside.com 2019 - 2024. All rights reserved.