21xrx.com
2024-11-05 19:45:16 Tuesday
登录
文章检索 我的文章 写文章
C++如何实现对齐输出?
2023-07-12 12:28:47 深夜i     --     --
C++ 实现 对齐输出 格式化 控制台输出

C++是一种流行的编程语言,具有强大而灵活的编程能力。对齐输出是C++开发人员经常遇到的一个问题。在输出时,如果文本格式不整齐或没有对齐,会使程序输出的信息变得难以读取和理解。因此,C++程序员需要了解如何实现对齐输出。

C++提供了多种方法来实现对齐输出。以下是实现对齐输出的三种主要方法:

1. setw()函数

setw()函数是C++中的一个输出流操作符,用于设置输出字段的宽度。例如:


#include <iostream>

#include <iomanip>

using namespace std;

int main() {

  cout << setw(10) << "Name" << setw(15) << "Address" << endl;

  cout << setw(10) << "Tom" << setw(15) << "1234 Main St." << endl;

  cout << setw(10) << "John" << setw(15) << "5678 Elm St." << endl;

  return 0;

}

输出结果:


   Name     Address

    Tom   1234 Main St.

   John   5678 Elm St.

2. setiosflags()函数

setiosflags()函数是C++中的一个流操作符,用于设置输出格式。可以使用这个函数实现对齐输出。例如:


#include <iostream>

#include <iomanip>

using namespace std;

int main() {

  cout << setiosflags(ios::left)

    << setw(10) << "Name"

    << setw(15) << "Address" << endl;

  cout << setiosflags(ios::left)

    << setw(10) << "Tom"

    << setw(15) << "1234 Main St." << endl;

  cout << setiosflags(ios::left)

    << setw(10) << "John"

    << setw(15) << "5678 Elm St." << endl;

  return 0;

}

输出结果:


Name    Address

Tom    1234 Main St.

John    5678 Elm St.

3. printf()函数

printf()函数是标准C的函数,用于格式化输出。它能够实现对齐输出。例如:


#include <cstdio>

int main() {

  printf("%-10s%-15s\n", "Name", "Address");

  printf("%-10s%-15s\n", "Tom", "1234 Main St.");

  printf("%-10s%-15s\n", "John", "5678 Elm St.");

  return 0;

}

输出结果:


Name   Address   

Tom    1234 Main St. 

John   5678 Elm St. 

以上三种方式均可实现对齐输出,程序员可以根据需要选择合适的方法。无论使用哪种方法,对齐输出都将使程序的输出更加易于读取和理解。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复