C++操纵符用法
C++中的操纵符(Manipulators)是用于格式化输入输出的特殊工具。它们可以在输出流中控制各种格式,如设置字段宽度、精度、填充字符等。以下是一些常用的操纵符及其用法:
-
setw(int width)
: 设置字段宽度为width个字符。cout << setw(10) << "Hello"; // 输出: Hello(总宽度为10个字符,Hello占据了5个字符,前面填充了5个空格)
-
setprecision(int n)
: 设置浮点数的精度为n位小数。double num = 3.14159; cout << setprecision(3) << num; // 输出:3.14
-
fixed
和scientific
: 控制浮点数的输出格式,分别为定点表示和科学计数法表示。double num = 1234.5678; cout << fixed << setprecision(2) << num; // 输出:1234.57 cout << scientific << setprecision(2) << num; // 输出:1.23e+03
-
left
、right
和internal
: 控制输出的对齐方式,分别为左对齐、右对齐和在填充字符之间对齐。cout << left << setw(10) << "Hello"; // 输出:Hello (左对齐) cout << right << setw(10) << "Hello"; // 输出: Hello(右对齐)
-
setfill(char c)
: 设置填充字符为c。cout << setw(10) << setfill('*') << "Hello"; // 输出:****Hello
-
boolalpha
: 控制bool类型的输出,以字符串形式输出true或false。bool b = true; cout << boolalpha << b; // 输出:true
-
showpoint
: 在浮点数的输出中始终显示小数点。double num = 10.5; cout << showpoint << num; // 输出:10.5000
这些操纵符可以单独使用,也可以组合使用以实现更复杂的格式化需求。