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

如何使用``庫在C 中格式化資料表?

DDD
DDD原創
2024-11-17 03:28:03206瀏覽

How can I format a data table in C   using the `` library?

如何在C 中輕鬆格式化資料表

使用用於格式化

為了在C中輕鬆格式化資料表,;函式庫提供了一個方便的函數。

setw()

setw() 指定輸出的最小寬度。預設情況下,它會用空格填滿剩餘空間。

setfill()

setfill() 允許您設定用於填充任何額外空間的字元。對於表格對齊,可以使用空格字元 (' ')。

left() 或 right()

left() 和 right() 控制對齊方式的輸出。 left() 將輸出向左對齊,而 right() 將其向右對齊。

範例程式碼

要依需求格式化資料表,請使用निम्नलिखित कोड:

#include <iostream>
#include <iomanip>

using namespace std;

const char separator = ' ';
const int nameWidth = 6;
const int numWidth = 8;

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

    return 0;
}

簡化列印的範本函數

為了進一步簡化格式化過程,您可以建立一個範本函數:

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(17.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