C语言中并没有bool类型变量。这是C++中新增的系统类型。
要在C语言中使用bool类型,可以使用自定义的方式。
1 使用整型做bool类型。
typedef int bool;
或
typedef unsigned char bool;
只要是整型,都可以当做bool使用。
2 使用枚举类型做bool类型。
typedef enum
{
false,
true
}bool;
实际应用中,枚举类型较为普遍。
bool就是布尔的意思,布尔值的返回值只有真(true)和假(false),多用于判断。
在C语言中,关系运算和逻辑运算的结果有两种,真和假:0表示假,非0表示真。例如:
#include <stdioh>
intmain(){
inta,b,flag;
scanf("%d %d", &a, &b);
flag = a > b; //flag保存关系运算结果
printf("flag=%d\n",flag);
return0;
}
扩展资料运行结果:
1020↙
flag=0
C语言并没有彻底从语法上支持“真”和“假”,只是用0和非0来代表。这点在C++中得到了改善,C++新增了bool类型(布尔类型),它一般占用1个字节长度。bool类型只有两个取值,true和false:true表示“真”,false表示“假”。
BOOL是微软定义的typedef int BOOL,可见BOOL只是int(4字节int)的别名,并非布尔类型;它的定义在头文件windowsh中。所以在C语言中可以用%d直接控制输出,在C++中可用cout <<直接输出。以下代码可以佐证:
//#include "stdafxh"//If the vc++60, with this line#include <iostream>
#include "windowsh"//BOOL定义在这个头文件中
using namespace std;
int main(int argc,char argv[]){
BOOL x=1234567890;
cout << "Use the 'cout <<': x = " << x << endl;//使用C++输出流
printf("Use the 'printf': x = %d\n",x);//使用库函数printf
return 0;
}
输出结果为:
以上就是关于C语言中,定义一个布尔型变量如何用,为什么用bool定义会报错全部的内容,包括:C语言中,定义一个布尔型变量如何用,为什么用bool定义会报错、C++语言中bool是什么意思、C语言:要输出一个BOOL型变量(不转换直接输出)该用什么符号等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)