setw()的用法

setw(int n)只是对直接跟在<<后的输出数据起作用,而在之后的<<需要在之前再一次使用setw;(Sets the number of characters to be used as the field width for the next insertion operation.)
n是在输出时分配了n个字符的输出宽度,然后默认的是在n个字符宽度中右对齐输出,可以使用setiosflags(ios::left)设置为左对齐输出,可以使用setfill('char x')使用x来填充空下的空格;示例如下。(cplusplus.com在其中直接搜索iomanip之后就可以查到在这个头文件中包含的所有成员函数)

#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
    cout << setw(10) << setiosflags(ios::left) <<setfill('*') << 10 << endl;
    cout << setw(10) << setiosflags(ios::right) <<setfill('*') << 10 << endl;
    cout << setw(10) << setfill('*') << 10 << endl;
    int a=10;
    int b=20;
    cout.setf(ios::right,ios::adjustfield);
    cout.fill('0');
    cout << setw(5) << a <<endl;
    cout << setw(5) << b << endl;
    return 0;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,845评论 18 139
  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 12,767评论 0 33
  • ug_yjj阅读 294评论 0 0
  • 陪伴是最长情的告白,对于我的孩子,我不敢说这句话。 今天又开家长了,难以想象我已经第二次开家长,似...
    快乐红宝宝阅读 406评论 0 0
  • 序 esper是一个比较经典的CEP(Complex Event Processing)的开源实现(开源协议为GP...
    go4it阅读 3,290评论 0 0