如何使用 C 輸出運算子列印前導零
在 C 中,保持對輸出格式的控制至關重要。為此,您可以使用輸出運算符,例如
要實現此目的,請考慮以下程式碼:
std::cout << "ZIP code: " << sprintf("%05d", zipCode) << std::endl;
這種方法使用sprintf() 將zipCode 格式化為帶有前導零的字串,然後由<<;輸出。操作員。然而,由於額外的 sprintf() 調用,它並不理想。
相反,C 提供了 IO 操縱器,可以提供更大的靈活性和控制力。以下程式碼示範了它們的用法:
#include <iostream> #include <iomanip> using namespace std; cout << setw(5) << setfill('0') << zipCode << endl;
setw(5) 操縱器將字段寬度設為 5 個字符,確保 zipCode 和任何前導零有足夠的空間。 setfill('0') 操縱器將填充字元指定為 '0',它將用於填充欄位。
或者,您可以使用fmt 庫,它簡化了格式並允許更具表現力:
cout << fmt::format("{0:05d}", zipCode);
此外,C 20 引入了std::format 函數,提供與fmt 類似的功能
但是,要注意的是,這些IO 操作會影響cout物件的全域狀態,因此除非您撤銷這些操作,否則 cout 的後續使用將會受到影響。
以上是如何使用輸出運算子在 C 中列印前導零?的詳細內容。更多資訊請關注PHP中文網其他相關文章!