博客
关于我
C++基础之布尔类型,什么是C++的布尔类型
阅读量:128 次
发布时间:2019-02-26

本文共 1063 字,大约阅读时间需要 3 分钟。

在C语言中,关系运算和逻辑运算的结果只有两种:0 表示假,非 0 表示真。例如:

#include 
int main() { int a, b, flag; scanf("%d %d", &a, &b); flag = a > b; // flag保存关系运算结果 printf("flag = %d\n", flag); return 0;}

运行结果:

10 20flag = 0

C语言并没有彻底从语法上支持“真”和“假”,只是用 0 和非 0 来表示。这一点在 C++ 中得到了改善,C++ 新增了 bool 类型(布尔类型),它一般占用 1 个字节长度。bool 类型只有两个取值,truefalsetrue 表示“真”,false 表示“假”。

bool 是 C++ 中的关键字,其用法和 intcharlong 类似。例如:

#include 
using namespace std;int main() { int a, b; bool flag; // 定义布尔变量 cin >> a >> b; flag = a > b; cout << "flag = "; if (flag) { cout << "true"; } else { cout << "false"; } return 0;}

然而,C++ 中使用 cout 输出 bool 变量的值时仍然是用数字 1 和 0 表示,而不是 truefalse。Java、PHP、JavaScript 等语言支持布尔类型,但输出结果为 truefalse

你也可以使用 truefalse 显式地对 bool 变量赋值。例如:

#include 
using namespace std;int main() { bool flag = true; if (flag) { cout << "true"; } else { cout << "false"; } return 0;}

运行结果:

true

注意,truefalse 是 C++ 中的关键字,true 表示“真”,false 表示“假”。

在以后的编码中,我推荐使用 bool 变量来表示逻辑运算、关系运算以及开关变量的值。

转载地址:http://yyvf.baihongyu.com/

你可能感兴趣的文章
OpenCV与AI深度学习 | 如何使用YOLOv9检测图片和视频中的目标
查看>>
OpenCV与AI深度学习 | 如何在 Docker 容器中使用 GPU
查看>>
OpenCV与AI深度学习 | 实战 | OpenCV中更稳更快的找圆方法--EdgeDrawing使用演示(详细步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | OpenCV传统方法实现密集圆形分割与计数(详细步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | OpenCV实现扫描文本矫正应用与实现详解(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | YOLO11自定义数据集训练实现缺陷检测 (标注+训练+预测 保姆级教程)
查看>>
OpenCV与AI深度学习 | 实战 | YOLOv10模型微调检测肾结石并提高准确率
查看>>
OpenCV与AI深度学习 | 实战 | 使用OpenCV和Streamlit搭建虚拟化妆应用程序(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | 使用OpenCV确定对象的方向(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | 使用YOLOv8 Pose实现瑜伽姿势识别
查看>>
OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
查看>>
OpenCV与AI深度学习 | 实战 | 使用姿态估计算法构建简单的健身训练辅助应用程序
查看>>
OpenCV与AI深度学习 | 实战 | 基于OpenCV和K-Means聚类实现颜色分割(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YoloV5和Mask RCNN实现汽车表面划痕检测(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YOLOv9+SAM实现动态目标检测和分割(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战 | 基于YOLOv9和OpenCV实现车辆跟踪计数(步骤 + 源码)
查看>>
OpenCV与AI深度学习 | 实战 | 文本图片去水印--同时保持文本原始色彩(附源码)
查看>>
OpenCV与AI深度学习 | 实战 | 通过微调SegFormer改进车道检测效果(数据集 + 源码)
查看>>
OpenCV与AI深度学习 | 实战—使用YOLOv8图像分割实现路面坑洞检测(步骤 + 代码)
查看>>
OpenCV与AI深度学习 | 实战篇——基于YOLOv8和OpenCV实现车速检测(详细步骤 + 代码)
查看>>