使用iomanip指令

时间:2013-08-30 17:45:29

标签: c++ iomanip

我知道如何设置字段宽度,但只应用于流中的第一个元素。 例如。

cout << setw(5) << left << '1' << '2';

产生

1     2

cout << setw(5) << left << '1' << '2' << '3';

产生

1     23

如何使用iomanip库设置字段宽度,使其适用于所有元素 制造

1     2     3

而不是像下面那样写两次setw(5):

cout << setw(5) << left << '1' << setw(5) << left << '2' << '3';

1 个答案:

答案 0 :(得分:0)

不幸的是,没有。几乎每次输出操作之前都必须使用setw()。问题是operator<<在输出后有效地调用setw(0),因此您需要再次设置宽度。有关重置字段宽度的操作的完整列表,请参阅here

注意:setw只是width()的包装,所以使用后者无济于事。