C++中的I/O输入输出问题
C++ I/O
navigation:
1.输入输出
C++语言不直接处理输入输出,而是通过一些标准库中类型。从设备(文件,控制台,内存)中读取数据,向设备中写入数据操作
IO类
iostream 流读写数据
fstream 文件读写数据
sstream 内存string读写数据
IO对象不可以进行复制、拷贝等操作
管理输出缓冲
每个输出流都会管理一个缓冲区,一般的输出流可能直接打印,也有可能保存到缓冲区
设备的写操作很费时间,多个输出操作组合为一个写操作
缓冲区刷新
程序结束运行,main函数return值返回
缓冲区满
操作指令刷新
输出流被关联到另一个流,输入流的刷新会导致输出流的刷新
cout<<"hi!"<<endl; //输出后换行,刷新buff
cout<<"hi!"<<flush; // 输出刷新
cout<<"hi!"<<ends; // 输出后加一个空字符,刷新
读取文件的getline函数
2.字符串流
- istringstream 既要处理整个文本,也要处理一行文本中单词字符
2.ostringstream