关于布尔型的一些说明(C++)

布尔型是一种基本数据类型,它在 C++ 中可以直接使用,但在 C 语言中应添加<stdbool.h>头文件才可以使用。

布尔型,即bool,它的取值只能是true(真)或者false(假),分别代表非零与零。

对布尔型的赋值可以直接用true或者false进行赋值,也可以用整型常量对其进行赋值,只不过整型常量赋值给布尔型变量会自动转换为true或者false。

对于理解true或者false,true就是(非零,在计算机中存储时以1存储),false就是(零,计算机内以0存储)。

让我们来看下面几个具体的例子。

#include <stdio.h>
main()
{
	bool a;
	a=5;
	printf("%d",a);
}
运行结果:
1

从中我们看到,就算我们把 整型常量5 赋值给 bool型变量a,a的值以%d输出的话仍然为1,因为整型常量会自动转换成true或者false,这里,5作为非零,故转换为true。

#include <stdio.h>
main()
{
	bool a;
	printf("%d",sizeof(a));
}
运行结果:
1

从这个例子中我们看到,布尔型数据只占据一个字节的大小,故在一些需要节省内存空间的地方可以考虑使用布尔型。

#include <stdio.h>
main()
{
	int a=false;
	printf("%d",a);
}
运行结果:
0

从这个例子中我们看到,true或者false实际上就是1和0,当以%d形式输出时它会返回1或者0。

定义布尔型函数
我们可以定义一个布尔型函数,它会根据条件返回true或者false,这在一些需要处理很多单调情况的实例中常常用到。

看下面的例子。

#include <stdio.h>
bool Fx(int a,int b)
{
	return a>b?true:false;
}
main()
{
	int x,y;
 
	printf("x=");
	scanf("%d",&x);
	printf("y=");
	scanf("%d",&y);
 
	if(Fx(x,y)==1)
	printf("x>y");
	else
	printf("x<y");
}
运行结果:
x=5
y=6
x<y
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值