c++++中cin和cout是标准输入输出流,用于控制台输入输出处理。1. 使用setw(n)设置输出宽度,需包含

C++里,cin和cout是标准输入输出流,用来处理控制台的输入和输出。它们不仅简单易用,还能进行基本的格式化操作,比如设置输出宽度、精度、进制等。

输出对齐与宽度设置:setw
在输出数据时,我们经常希望数据能整齐排列,特别是在表格类输出中。这时候可以使用 setw(n) 函数来设定输出项的宽度为 n 个字符。

#include#include // 必须包含这个头文件才能使用 setw using namespace std; int main() { cout << setw(10) << "apple" << setw(10) << "banana" << endl; cout << setw(10) << 3.14 << setw(10) << 12345 << endl; }
上面这段代码会让每个输出字段都占10个字符宽,不足部分自动补空格。注意,setw 只对其后紧接着的输出项有效。
立即学习“C++免费学习笔记(深入)”;
- 如果想右对齐或者左对齐,可以配合
setiosflags(ios::right)或setiosflags(ios::left) - 默认是右对齐,但如果是字符串类型,左对齐可能更合适
控制浮点数输出精度:setprecision
当你输出一个浮点数时,默认会显示6位有效数字。如果你需要更多或更少的小数位,可以用 setprecision(n) 来控制输出的有效位数。
Python v2.4版chm格式的中文手册,内容丰富全面,不但是一本手册,你完全可以把她作为一本Python的入门教程,教你如何使用Python解释器、流程控制、数据结构、模板、输入和输出、错误和异常、类和标准库详解等方面的知识技巧。同时后附的手册可以方便你的查询。

#include#include using namespace std; int main() { double num = 3.1415926535; cout << setprecision(5) << num << endl; // 输出 3.1416(四舍五入) cout << setprecision(10) << num << endl; // 输出 3.1415926536 }
需要注意:
-
setprecision的作用范围是全局的,除非你再次修改它 - 如果你想固定小数点后的位数而不是有效数字位数,可以加上
setiosflags(ios::fixed)
设置整数进制输出:hex, oct, dec
有时候你需要以十六进制或八进制形式输出整数,这时可以直接使用 hex、oct 和 dec 这几个操纵符。
#includeusing namespace std; int main() { int num = 255; cout << hex << num << endl; // 输出 ff cout << oct << num << endl; // 输出 377 cout << dec << num << endl; // 输出 255 }
这些进制设置也是“持久”的,也就是说一旦设置了 hex,之后的整数输出都会按十六进制显示,直到你改回 dec 或 oct。
基本上就这些。cin 和 cout 虽然看起来简单,但通过 提供的一些函数,可以实现不少基础的格式化需求。像 setw、setprecision、setiosflags 这些操作虽然不复杂,但很容易忽略细节,比如作用范围、是否要包含头文件等。掌握好这些,就能写出更清晰、专业的控制台输出了。









