c语言中bool的使用

10 篇文章 0 订阅
本文介绍了布尔型(bool)变量在C语言中的应用,包括逻辑表达式、函数返回类型以及在条件语句中的使用。讨论了bool类型的优点,如提高代码可读性和性能,并通过实例展示了_C语言中_GCC编译器对_Bool类型的处理。最后,提醒了在for循环中局部变量的作用域问题。
摘要由CSDN通过智能技术生成

布尔型(bool)变量的值只有 真 (true) 和假 (false)。

应用:

①布尔型变量可用于逻辑表达式,也就是“或”“与”“非”之类的逻辑运算和大于小于之类的关系运算,逻辑表达式运算结果为真或为假

②bool可用于定义函数类型为布尔型,函数里可以有 return TRUE; return FALSE 之类的语句。

③布尔型运算结果常用于条件语句

        if (逻辑表达式){如果是 true 执行这里;}

        else{如果是 false 执行这里;};

扩展资料

使用bool逻辑型变量的优点:

1、 提高程序的可读性

bool类型的变量只可能有两个值true或false,在没有统一的布尔类型在大型的工程项中特别是用到第三方程序库时,可能使用不同的手段模拟布尔类型以提交代码的可读性,这样会使得代码有些混

乱,C语言中引入了bool内置类型,解决了代码的一致性问题。

2、提高程序的性能

bool在绝大多数编译器编译时都将其实现为1字节,即sizeof(bool)的值为1,加上其只有两个值的值域{true, false},是C语言中最小的数据类型了。

虽然char、unsigned char和signed char类型在C语言中没有特定的实现要求,但一般也实现为一个字节,这样看来与bool类型从内存空间的占用上并没有性能上的差异。

#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int main(void)
{
bool boolean=-11212112;
printf("boolean:%d\n",boolean);
return EXIT_SUCCESS;
}

输出结果:
boolean:1
可以看到,gcc编译器对待_Bool类型有自己的转换处理。如果是0赋值给_Bool类型,那么就赋值0。如果是任意其他数据,那么会赋值为1。(只是不知道其他编译器是否如此处理,C2008标准草案没有细说这个部分)
_Bool类型只有0和1这两个值。 

实战:

注意for 的内定义的作用域!!!!

在Python,整型(int)、浮点型(float)和布尔型(bool)是可以相互转换的。这里我们将展示如何将这些基本类型进行转换,并输出转换后的结果。 首先,我们有一个整型变量`a`,一个浮点型变量`b`和一个布尔型变量`c`。 ```python a = 10 # 整型 b = 3.14 # 浮点型 c = True # 布尔型 ``` 接下来,我们将这三个变量进行类型转换: - 将浮点型变量`b`转换为整型,可以直接使用内置函数`int()`,结果为3。 - 将布尔型变量`c`转换为整型,使用`int()`函数,`True`将转换为1,`False`将转换为0。 - 将整型变量`a`转换为浮点型,使用`float()`函数,结果为10.0。 - 将整型变量`a`转换为布尔型,`int`类型除了0以外的任何数在布尔上下文都为`True`。 - 将浮点型变量`b`转换为布尔型,非零的浮点数在布尔上下文为`True`。 - 将布尔型变量`c`转换为浮点型,`True`转换为1.0,`False`转换为0.0。 输出转换后的结果: ```python # 浮点型b转换为整型 b_to_int = int(b) # 结果为3 # 布尔型c转换为整型 c_to_int = int(c) # 结果为1 # 整型a转换为浮点型 a_to_float = float(a) # 结果为10.0 # 整型a转换为布尔型 a_to_bool = bool(a) # 结果为True # 浮点型b转换为布尔型 b_to_bool = bool(b) # 结果为True # 布尔型c转换为浮点型 c_to_float = float(c) # 结果为1.0 # 输出结果 print(f"浮点型b转换为整型的结果为:{b_to_int}") print(f"布尔型c转换为整型的结果为:{c_to_int}") print(f"整型a转换为浮点型的结果为:{a_to_float}") print(f"整型a转换为布尔型的结果为:{a_to_bool}") print(f"浮点型b转换为布尔型的结果为:{b_to_bool}") print(f"布尔型c转换为浮点型的结果为:{c_to_float}") ``` 以上代码将输出转换后的整型、浮点型、布尔型数值的结果。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Ocean__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值