c++++中cin和cout是标准输入输出流,用于控制台输入输出处理。1. 使用setw(n)设置输出宽度,需包含<iomanip>头文件,仅对后一个输出项有效;2. setprecision(n)控制浮点数有效位数,作用范围全局;3. 用setiosflags(ios::fixed)固定小数点后位数;4. hex、oct、dec分别设置十六进制、八进制、十进制输出,具有持久性;这些格式化操作能提升输出的清晰度与专业性。

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

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

#include <iostream>
#include <iomanip> // 必须包含这个头文件才能使用 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) 来控制输出的有效位数。

#include <iostream>
#include <iomanip>
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 这几个操纵符。
#include <iostream>
using 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 虽然看起来简单,但通过 <iomanip> 提供的一些函数,可以实现不少基础的格式化需求。像 setw、setprecision、setiosflags 这些操作虽然不复杂,但很容易忽略细节,比如作用范围、是否要包含头文件等。掌握好这些,就能写出更清晰、专业的控制台输出了。
以上就是怎样使用C++的标准输入输出流 cin和cout的基本格式化操作的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号