std::boolalpha, std::noboolalpha

来自cppreference.com
< cpp‎ | io‎ | manip
 
 
 
输入/输出操纵符
浮点格式化
整数格式化
布尔格式化
boolalphanoboolalpha
域宽与填充控制
其他格式化
空白符处理
输出冲入
状态标志操纵
时间与金钱 I/O
(C++11)
(C++11)
(C++11)
(C++11)
带引号操纵符
(C++14)
 
在标头 <ios> 定义
std::ios_base& boolalpha( std::ios_base& str );
(1)
std::ios_base& noboolalpha( std::ios_base& str );
(2)
1) 启用流 str 中的 boolalpha 标志,如同通过调用 str.setf(std::ios_base::boolalpha)
2) 禁用流 str 中的 boolalpha 标志,如同通过调用 str.unsetf(std::ios_base::boolalpha)

std::boolalpha 是 I/O 操纵符,故可用如 out << std::boolalpha 的表达式对任何 std::basic_ostream 类型的 out ,或用如 in >> std::boolalpha 的表达式对任何 std::basic_istream 类型的 in 调用。

参数

str - 到 I/O 流的引用

返回值

str (到操纵后的流的引用)

示例

#include <sstream>
#include <locale>
#include <iostream>
int main()
{
    // boolalpha 输出
    std::cout << std::boolalpha 
              << "boolalpha true: " << true << '\n'
              << "boolalpha false: " << false << '\n';
    std::cout << std::noboolalpha 
              << "noboolalpha true: " << true << '\n'
              << "noboolalpha false: " << false << '\n';
    // boolalpha 分析
    bool b1, b2;
    std::istringstream is("true false");
    is >> std::boolalpha >> b1 >> b2;
    std::cout << '\"' << is.str() << "\" parsed as " << b1 << ' ' << b2 << '\n';
}

输出:

boolalpha true: true
boolalpha false: false
noboolalpha true: 1
noboolalpha false: 0
"true false" parsed as 1 0

参阅

清除指定的 ios_base 标志
(函数)
设置指定的 ios_base 标志
(函数)
提供用作布尔 truefalse 名称的字符串
(std::numpunct<CharT> 的虚受保护成员函数)