C语言如何实现BOOL类型

2023-02-27 08:02:07 语言 类型 如何实现

C语言实现BOOL类型

C语言功能强大,语法简洁,但简洁到没有BOOL类型,不能像c++那样使用true和false,这大大降低了代码的可读性,不过C语言的可塑性高,我们可以自定义一个BOOL类型,很简单,定义之后就和其他语言的bool类型一样了,直接使用true或者false就行。

下面还是先上代码。

#include <stdio.h>
#define BOOL char
#define true 1
#define false 0
BOOL a();
int main(){
	if(a()){
		printf("TRUE");
	}else{
		printf("FALSE");
	}
}
BOOL a(){
	int num1,num2;
	scanf("%d%d",&num1,&num2);
	if(num1>num2){
		return true;
	}else{
		return false;
	}
}

我们看定义BOOL类型就只有3行,

#define BOOL char
#define true 1
#define false 0

然后我们定义了一个返回值为BOOL类型的函数,输入两个数,如果第一个数大于第二个数则返回true,反之则返回false。然后在main函数调用a函数的返回值,可以看到这样就可以在C语言正常使用BOOL类型了。

C语言中bool如何输出

 写java代码时间久了再写c的代码,发现思维很容易混乱,写c++的时候也容易混乱,今天用c语言想输出bool型的值,居然用java的方法直接输出,结果当然不行,仔细想了一想,c中的bool型就是0和1,因此可以用%d输出,因此。。。

代码如下:

#include <stdio.h>

void  main()
{
  bool  b = true;
   printf("%d\n",b);

   bool  c = false;
   printf("%d\n",c);
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

相关文章