c++ 正在打印附加到浮点数的%字符

jei2mxaa  于 2022-12-15  发布在  其他
关注(0)|答案(1)|浏览(113)

假设我重载了操作系统运算符,我想要一个值表,它被分成如下的列:

┌───────────────┬──────────────────────┬─────────────┬──────────────┐
│      X        │         Y.           │ Z.          │ value        │
├───────────────┼──────────────────────┼─────────────┼──────────────┤

下面我使用流打印这些值:

<< std::setw(13) << std::noshowpoint << value << "%" << "|" << endl;

我如何才能做到这一点,让我们说的输出值等于5将打印为5%
我尝试使用to_string方法,但结果是重写noshowpoint操作符。

k4emjkb1

k4emjkb11#

首先为值和百分号创建字符串。
然后将该字符串与格式一起使用。
你可以使用字符串输出流来完成第一部分,也可以把它合并成一条语句:

std::cout << std::setw(13)
          << (std::ostringstream{ } << std::noshowpoint << value << '%').str()
          << "|\n";

相关问题