簡體   English   中英

C99布爾數據類型?

[英]C99 boolean data type?

什么是C99布爾數據類型以及如何使用它?

包含<stdbool.h>標頭

#include <stdbool.h>

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

truefalse分別擴展為10

7.16布爾類型和值< stdbool.h >

  • 1頭文件<stdbool.h>四個宏。
  • 2宏
    • bool擴展為_Bool。
  • 3其余三個宏適用於#if預處理指令。 他們是
    • true:擴展為整數常數1
    • false:擴展為整數常量0,並且
    • __bool_true_false_are_defined擴展為整數常量1。
  • 4盡管有7.1.3的規定,程序仍可能不確定,然后可能會重新定義宏bool,true和false。

請在DaniWeb上的此相關線程上檢查出答案。

此處提取並引用以方便參考:


在c99中使用新關鍵字

_Bool :C99的布爾類型。 僅當您要維護已為bool,true或false定義宏的舊代碼時,才建議直接使用_Bool。 否則,這些宏將在<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;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM