首頁 >後端開發 >C++ >如何使用 `` 標頭格式化 C 中的資料表?

如何使用 `` 標頭格式化 C 中的資料表?

Patricia Arquette
Patricia Arquette原創
2024-11-25 19:35:14363瀏覽

How can I format data tables in C   using the `` header?

使用 C 標頭格式化資料表

可以使用 中提供的方法來格式化 C 中的資料表。標頭。這些函數可以控制輸出的寬度、對齊方式和填充字符,讓您獲得專業的外觀。

setfill()、setw() 和left/right

為了建立所需的表格格式,C 提供了三個基本的函數:

  • setfill():設定用於填滿寬度中空白區域的字元。
  • setw():定義為輸出分配的寬度。
  • 左/右:指定文字在寬度內的對齊方式。

範例程式碼

以下範例將依照您所需的格式設定單行的格式:

#include <iostream>
#include <iomanip>

using namespace std;

int main() {
    const char separator = ' ';
    const int nameWidth = 6;
    const int numWidth = 8;

    cout << left << setw(nameWidth) << setfill(separator) << "Bob"
         << left << setw(nameWidth) << setfill(separator) << "Doe"
         << left << setw(numWidth) << setfill(separator) << 10.96
         << left << setw(numWidth) << setfill(separator) << 7.61
         << left << setw(numWidth) << setfill(separator) << 14.39
         << left << setw(numWidth) << setfill(separator) << 2.11
         << left << setw(numWidth) << setfill(separator) << 47.30
         << left << setw(numWidth) << setfill(separator) << 14.21
         << left << setw(numWidth) << setfill(separator) << 44.58
         << left << setw(numWidth) << setfill(separator) << 5.00
         << left << setw(numWidth) << setfill(separator) << 60.23;
    cout << endl;

    cin.get();
}

使用模板函數

為了簡化程式碼,可以考慮使用模板函數:

template<typename T>
void printElement(T t, const int& width) {
    cout << left << setw(width) << setfill(separator) << t;
}

此函數可用於列印指定寬度的每個元素:

printElement("Bob", nameWidth);
printElement("Doe", nameWidth);
printElement(10.96, numWidth);
printElement(7.61, numWidth);
printElement(14.39, numWidth);
printElement(2.11, numWidth);
printElement(47.30, numWidth);
printElement(14.21, numWidth);
printElement(44.58, numWidth);
printElement(5.00, numWidth);
printElement(60.23, numWidth);
cout << endl;

以上是如何使用 `` 標頭格式化 C 中的資料表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn