使用 cout << 时如何用前导零填充 int操作员?

2022-01-12 00:00:00 formatting c++ cout

我希望 cout 输出一个带前导零的 int,因此值 1 将打印为 001 和值 25 打印为 025.我该怎么做?

I want cout to output an int with leading zeros, so the value 1 would be printed as 001 and the value 25 printed as 025. How can I do this?

推荐答案

如下,

#include <iomanip>
#include <iostream>

int main()
{
    std::cout << std::setfill('0') << std::setw(5) << 25;
}

输出将是

00025

setfill 默认设置为空格字符(' ').setw 设置要打印的字段的宽度,就是这样.

setfill is set to the space character (' ') by default. setw sets the width of the field to be printed, and that's it.

如果您有兴趣了解如何格式化输出流,我为另一个问题写了一个答案,希望它有用:格式化 C++ 控制台输出.

If you are interested in knowing how the to format output streams in general, I wrote an answer for another question, hope it is useful: Formatting C++ Console Output.

相关文章