C++ ios::Boolalpha() 函数



C++ 的std::ios::boolalpha函数用于控制流中布尔输出的格式。当调用此函数时,布尔值将显示为文本 true 或 false,而不是默认的 1 或 0。它通过使用 std::boolalpha 操纵器触发,并使用 std::noboolalpha 禁用。

此函数提高了日志和用户界面中布尔输出的可读性。

语法

以下是 std::ios::boolalpha() 函数的语法。

ios_base& boolalpha (ios_base& str);

参数

  • str - 它表示其格式标志受影响的流对象。

返回值

此函数返回参数 str。

异常

如果抛出异常,则 str 处于有效状态。

数据竞争

它修改了 str。并发访问同一个流对象可能会导致数据竞争。

示例

在以下示例中,我们将考虑 boolalpha() 函数的基本用法。

#include <iostream>
int main()
{
    bool x = true;
    std::cout << "Without boolalpha: " << x << std::endl;
    std::cout << std::boolalpha;
    std::cout << "With boolalpha: " << x << std::endl;
    return 0;
}

输出

以上代码的输出如下:

Without boolalpha: 1
With boolalpha: true

示例

考虑以下示例,我们将使用 boolalpha 与 std::cin 从用户读取布尔值。

#include <iostream>
int main()
{
    bool x;
    std::cout << "Enter true or false : ";
    std::cin >> std::boolalpha >> x;
    std::cout << "Entered Input : " << x << std::endl;
    return 0;
}

输出

以下是以上代码的输出:

Enter true or false : true
Entered Input : 1

示例

让我们看一下以下示例,我们将确定给定数字是偶数还是奇数。

#include <iostream>
int main()
{
    bool x = false;
    int a = 1;
    if (a % 2 == 0) {
        x = true;
    }
    std::cout << std::boolalpha;
    std::cout << "Is the given number even? " << x << std::endl;
    return 0;
}

输出

如果我们运行以上代码,它将生成以下输出:

Is the given number even? false
ios.htm
广告