C++学习笔记之boolalpha

本文介绍了C++中的boolalpha格式标志,当设置此标志时,布尔值将以文本形式插入/提取,如'false'或'true',而非整数值。可以通过noboolalpha操纵器取消此设置。示例代码和测试结果显示了boolalpha对布尔值输出的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ios_base& boolalpha (ios_base& str);

Sets the boolalpha format flag for the str stream.

When the boolalpha format flag is set, bool values are inserted/extracted by their textual representation: either trueor false, instead of integral values.

This flag can be unset with the noboolalpha manipulator.

For standard streams, the boolalpha flag is not set on initialization.

boolalpha是头文件#include <iostream>中的一个函数,是把bool a 变量打印出false或者true的函数.

使用如下:

#include <iostream>
using namespace std;

int main() {
    bool a=true;
    cout<<"请输入一个数值为布尔变量a赋值:"<<endl;
    cout<<"=================分隔符=================="<<endl;
    cout<<"若输入0则打印false,输入其他的数字均显示true:\n"<<endl;
    cin>>a;
    cout <<boolalpha<<a << endl;
    cout<<"=================分隔符=================="<<endl;
    return 0;
}

输出结果如图所示:


请输入一个数值为布尔变量a赋值:
=================分隔符==================
若输入0则打印false,输入其他的数字均显示true:

55
true
=================分隔符==================

进程已结束,退出代码 0

接下来,我们需要测试一下,在使用过一次boolalpha输出格式之后,后续的布尔值将会以何种形式输出:

include <iostream>
using namespace std;

int main() {
    bool a=true;
    cout<<"请输入一个数值为布尔变量a赋值:"<<endl;
    cout<<"=================分隔符=================="<<endl;
    cout<<"若输入0则打印false,输入其他的数字均显示true:\n"<<endl;
    cin>>a;
    cout <<boolalpha<<a << endl;
    cout<<"=================分隔符=================="<<endl;
    bool b=57;
    cout<<"在使用boolalpha之后测试布尔值输出格式,b输出为:"<<b<<endl;
    cout<<"测试使用noboolalpha来取消boolalpha效果:"<<noboolalpha<<b<<endl;
    return 0;
}

输出结果为:

请输入一个数值为布尔变量a赋值:
=================分隔符==================
若输入0则打印false,输入其他的数字均显示true:

6
true
=================分隔符==================
在使用boolalpha之后测试布尔值输出格式,b输出为:true
测试使用noboolalpha来取消boolalpha效果:1

进程已结束,退出代码 0

由测试结果可以看出,在使用过一次boolalpa控制布尔值输出格式之后,后续也会按照该格式输出。

如果要取消boolalpa格式,则需要使用noboolalpa。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值