我正在尝试使用setw和setfill获得以下输出:

OPTIONS:
    <expression>
       The usual operators +, -, *, / and % (remainder)
       Expressions are fixed-point decimal numbers, and
       Parentheses () and corchetes {} may be used for grouping.


我正在尝试这样:

    cout << "OPTIONS:" << '\n';
    cout << "\t<expression>\n";
    cout << '\t' << setw(3) << setfill(' ') << "The usual operators +, -, *, / and % (remainder)\n";
    cout << '\t' << setw(3) << setfill(' ') << "Expressions are fixed-point decimal numbers, and\n";
    cout << '\t' << setw(3) << setfill(' ') << "Parentheses () and corchetes {} may be used for grouping.\n\n";

最佳答案

std::setw是用于以表格格式打印长度可变的数据的出色工具。您指定列的宽度,空格将自动填充,直到达到指定的列宽。但是,如果需要固定数量的空格,则更容易对它们进行硬编码:cout << " "。如果多次需要相同的缩进,则可能需要将其定义为常量

auto indent = string(3, ' ');
cout << indent << ...;


这使您可以在以后根据需要轻松调整缩进量。

关于c++ - 使用setw和setfill进行输出格式化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56317041/

10-12 02:41