21xrx.com
2025-03-27 03:38:20 Thursday
文章检索 我的文章 写文章
如何在C++中实现输出对齐的表格?
2023-07-02 22:21:25 深夜i     56     0
C++ 表格 输出对齐

在C++中,有时候需要将输出内容以表格的形式展示,但是为了美观,我们需要保证表格各列的宽度一致并且对齐。在这种情况下,我们可以使用C++中的setw()函数实现输出对齐的表格。

setw()函数是C++中的一个输出流控制符,仅在输出流对象中使用。它是一个参数为一个整形数的函数,可以设置输出流下一个输出的宽度。

例如,下面的代码中使用setw()函数设置了每一列的宽度为10,左对齐。

#include <iostream>
#include <iomanip>
int main() {
  std::cout << std::setw(10) << std::left << "ID";
  std::cout << std::setw(10) << std::left << "Name";
  std::cout << std::setw(10) << std::left << "Age";
  std::cout << std::endl;
  
  std::cout << std::setw(10) << std::left << "001";
  std::cout << std::setw(10) << std::left << "Tom";
  std::cout << std::setw(10) << std::left << "20";
  std::cout << std::endl;
  
  std::cout << std::setw(10) << std::left << "002";
  std::cout << std::setw(10) << std::left << "Jack";
  std::cout << std::setw(10) << std::left << "24";
  std::cout << std::endl;
  
  return 0;
}

运行结果:

ID    Name   Age   
001    Tom    20    
002    Jack   24

从结果可以看出,每一列的宽度是10,且左对齐,此时即可实现输出对齐的表格。

另外,如果需要右对齐,只需要把std::left改为std::right即可。如果需要设置每一列的填充符号,也可以使用setfill()函数。

总之,setw()函数在C++中可以很方便地实现输出对齐的表格,这对于需要输出一些状态信息、表格数据的程序来说是非常有用的。

  
  

评论区

请求出错了