一、基本輸出
C++中,用於將輸出打印到標準輸出的語句是cout
,其在iostream
頭文件中定義。以下是一個簡單的例子:
#include <iostream> using namespace std; int main() { int num = 123; cout << num << endl; return 0; }
此程序將輸出123,並加上一個換行符endl
。其中,小於小於符號<<
用於輸出。
除了整型外,cout
還支持輸出各種數據類型,如字符型、實型和字符串。例如:
char ch = 'a'; cout << ch << endl; double pi = 3.14159; cout << pi << endl; string str = "Hello, world!"; cout << str << endl;
上述程序分別會輸出a、3.14159和Hello, world!。需要注意的是,在輸出字符串時,需要使用string
類型。
二、格式控制
在輸出數據時,有時需要對數字進行格式控制,例如指定寬度、小數點位數、對齊方式等。C++標準庫中提供了一些控制輸出格式的函數。以下是常用的一些函數:
setw(int n)
:設置下次輸出的寬度為n
,寬度不足時自動補齊空格。setprecision(int n)
:設置輸出實數的小數位數為n
,四捨五入。setiosflags(ios::left/right/internal/showpos/noshowpos)
:設置輸出左對齊/右對齊/內部對齊/在正數前顯示+號/不在正數前顯示+號。
以下是一個使用格式控制函數的例子:
#include <iomanip> using namespace std; int main() { double pi = 3.14159; cout << setw(10) << setprecision(3) << fixed << pi << endl; // 輸出寬度為10,小數點後保留3位,對齊方式為左對齊,固定小數點位數 cout << setw(10) << setiosflags(ios::right) << 123 << endl; // 輸出寬度為10,對齊方式為右對齊 return 0; }
此程序將輸出以下內容:
3.142 123
三、自定義格式化輸出
在上述方法無法滿足需求時,可以通過自定義格式化輸出來實現更精確的控制。自定義格式化輸出的基本思路是:
- 定義一個自定義類型,重載輸出運算符
<<
- 在輸出運算符中實現自定義的輸出格式
以下是自定義格式化輸出的一個例子:
#include <iostream> using namespace std; class Square { public: Square(int side) : m_side(side) {} friend ostream& operator<<(ostream& os, const Square& square) { int i, j; for (i = 1; i <= square.m_side; i++) { for (j = 1; j <= square.m_side; j++) { os << "# "; } os << endl; } return os; } private: int m_side; }; int main() { Square square(5); cout << square << endl; return 0; }
此程序將輸出以下內容:
# # # # # # # # # # # # # # # # # # # # # # # # #
其中,Square
類定義了一個參數為正方形邊長的構造函數。在輸出運算符中,使用兩層循環打印#
字符。在main
函數中,創建了一個邊長為5的正方形對象,並輸出了其內容。
四、總結
本文介紹了C++標準中用於輸出的cout
語句,以及對其輸出格式進行控制的方法。此外,還介紹了自定義格式化輸出的方法。在實際開發中,根據需求選擇合適的輸出方式可以提高程序的可讀性和運行效率。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/286116.html