如何用最大不超过一定限制的空格填充字符串?

时间:2019-02-04 21:06:02

标签: c++ whitespace padding

我有一个字符串s,我需要它在字符串的右边填充空格,最多15个字符。我尝试使用setw(),但是无论如何它只会添加15个空格。

因此,如果s = "aaaaaaaaaaaaaaa"(15个字符),则不应添加空格。

如果为s = "aaa",则应添加12个空格字符。

iomanip中是否有此功能?

1 个答案:

答案 0 :(得分:0)

<iomanip>包括std::setw,默认情况下它是右对齐的,但是std::left也可用:

std::cout << std::left << std::setw(15) << "foo" << "bar";

输出:

foo            bar

请注意,在要填充的每个输出之前,必须先std::left << std::setw()