我在C++工作.我给了一个10位数的字符串(字符数组),其中可能有或没有3个破折号(最多13个字符).是否有内置的方式使用流向右对齐它?
我如何才能正确地打印到流中?是否有内置函数/方法来执行此操作,还是需要在字符数组的开头填充3个空格?
我正在处理ostream是具体的,不确定这是否重要.
flo*_*rin 31
你需要std::setw结合使用std::right.
#include <iostream>
#include <iomanip>
int main(void)
{
std::cout << std::right << std::setw(13) << "foobar" << std::endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
是.您可以使用setw()设置宽度.默认对齐方式是右对齐的,默认填充是空格,因此这将在左侧添加空格.
stream << setw(13) << yourString
Run Code Online (Sandbox Code Playgroud)
见:setw().你需要包括<iomanip>.
有关更多详细信息,请参阅您最喜欢的C++(iostream)参考中的"setw"和"right":
cout << setw(13) << right << your_string;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
47287 次 |
| 最近记录: |