C++输入输出通过iostream流机制实现,核心为cin、cout等流对象及操作符;支持字符串读取(getline)、格式控制(setw、setprecision)和文件流(ifstream/ofstream)。

在C++中,输入输出主要通过标准库中的 iostream 实现,核心是流(stream)机制——用 cin 读入、cout 输出,配合 和 >> 操作符,简洁又灵活。
基础流对象与操作符
C++预定义了几个常用流对象:
-
cin:标准输入流(通常对应键盘),使用>>提取数据 -
cout:标准输出流(通常对应屏幕),使用插入数据 -
cerr:标准错误流(不带缓冲,常用于报错信息) -
clog:标准日志流(带缓冲,适合记录)
例如:
int x; double y;
cin >> x >> y; // 一次读两个,空格/换行分隔
cout << "x=" << x << ", y=" << y << endl;
处理字符串和空白字符
cin >> 默认跳过开头空白,并在遇到空白(空格、制表、换行)时停止读取,不适合读整行含空格的字符串。
- 读一行(含空格):用
std::getline(cin, str) - 清空输入缓冲区残留(比如混用
>>和getline后):cin.ignore()或cin.ignore(1000, '\n')
示例:
string name;
cin >> x;
cin.ignore(); // 跳过换行符
getline(cin, name); // 读取完整姓名(如 "Zhang San")
格式控制与状态检查
可以用 ios 相关函数或操纵符调整输出格式:
立即学习“C++免费学习笔记(深入)”;
Python v2.4版chm格式的中文手册,内容丰富全面,不但是一本手册,你完全可以把她作为一本Python的入门教程,教你如何使用Python解释器、流程控制、数据结构、模板、输入和输出、错误和异常、类和标准库详解等方面的知识技巧。同时后附的手册可以方便你的查询。
-
setw(n):设置下一次输出宽度(需) -
setprecision(n):控制浮点数精度 -
fixed/scientific:固定小数位或科学计数法 - 检查输入是否成功:
if (cin >> x) { ... }或if (cin.fail()) { ... }
例如:cout
文件流式输入输出
用 fstream 系列类可对文件操作:
-
ifstream:输入文件流(类似cin) -
ofstream:输出文件流(类似cout) -
fstream:同时读写
示例:
ifstream fin("data.txt");
if (fin.is_open()) {
int a; fin >> a;
fin.close();
}
基本上就这些。C++流式I/O逻辑清晰、扩展性强,掌握好 cin/cout、getline、格式控制和错误检查,日常开发已足够扎实。









