CPP输出对齐

C++在默认输出时,由于前个输出的长度不是固定的,所以会出现输出不对齐的情况。这种情况下有两种方法可以解决

设置输出的宽度cout.width(int w)

cout.width()返回当前的字段宽度,默认为0
如果当前的宽度大于0,则默认以右对齐的方式显示输出,但仅对下面一条cout语句起作用,而且宽度是从0

cout<<"默认宽度大小为:"<

上面的用法默认是右对齐,可以指明左对齐,用法如下:

cout.setf(std::ios::left);

把这条指令放在需要左对齐的语句前即可,对于上面的代码,取消注释即可,结果如下:


参考https://www.cnblogs.com/hustxujinkang/p/4176191.html

setw(int w)控制宽度

setw(int w)的用法与第一种方法相似,不过这个函数是插入在cout输出中的,不是单独一行。
setw用法需包含iomanip头文件

#include

将上面的代码用这种方法表示的话 应为:

for (long i = 1; i <= 100; ) {
    cout << setw(5)<< i << ':';
    i *= 10;
    cout << setw(8)<< i << endl;
}

setw的默认对齐方式也是右对齐,在cout中加入std::left方法指明左对齐

for (long i = 1; i <= 100; ) {
    cout << left << setw(5)<< i << ':';
    i *= 10;
    cout << left << setw(8)<< i << endl;
}

你可能感兴趣的:(CPP输出对齐)