C语言中的布尔类型

C89标准中没有定义布尔类型;

C99中增加了_Bool类型。
_Bool型变量实际上只是一个整数类型,
但是,_Bool只能被赋值为0或1,凡是不为0的整数都被转变为1,
如:

#include<stdio.h>
int main(int argc,char *argv[])
{
    _Bool flg;
    flg=5;
    printf("%d\n",flg);
    return 0;
}

输出:1


C99还提供了一个头文件<stdbool.h>,该头文件提供了bool宏来代替_Bool,

还提供了true和false代替1和0,如:

#include <stdio.h>
#include <stdbool.h>
int main(void)
{
    bool flg;
    flg=true;
    printf("%d\n",flg);
    flg=false;
    printf("%d\n",flg);
    return 0;
}

输出:

1
0

 

测试环境:
操作系统:Windows7(32位)
编译软件:Code::Blocks 10.05

你可能感兴趣的:(C语言中的布尔类型)