如何为积极的迹象预留一个空的空间

时间:2016-08-12 02:10:14

标签: c++ cout

标志std::ios::showpos打印出数值的正号。我想要实现的是保留空间而不是正号。这件事有没有旗帜?我可以为这个问题编写一个简单的if语句,但是,我正在寻求更优雅的方式。欢迎Boost图书馆。

#include <iostream>
#include <iomanip>

int main()
{
    std::cout.setf(std::ios::showpos);
    std::cout << 42 << "\n" << -42 << std::endl;
    return 0;
}

1 个答案:

答案 0 :(得分:-1)

您可以将std::noshowposstd::setw一起使用。

std::cout << std::noshowpos<<std::setw(3)<< 42 << "\n" << -42 << std::endl;