本文主要是介绍《C++ Primer 5th》读书笔记5---重读IO标准库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
其实我也想吐槽一下这个标准库。
就理解这个IO方向就搞地很麻烦。
1.#include <iostream>基本输入输出流
这个就我的使用来说,就是表示标准输入(cin),标准输出(cout),或者它们的引用。
方向:cin是一个流对象,与键盘来的数据默认绑定。cout是一个流对象,与去向屏幕或者说终端的数据默认绑定。
把内存当做中心,从键盘输入到内存,就叫做in。
从内存输出到屏幕,就叫做out。
注意:IO对象不能拷贝或者复制
2.#include <fstream>文件流
这个文件不是linux下面的任意外部设备的含义,而就是正常文件的含义。
方向:
把内存当做中心,从文件读取数据到内存,就叫做in。
从内存写出数据到文件,就叫做out。
注意:创建流对象并指定其关联的文件,即给出文件名的时候,可以有两种方式。
①使用string对象。
②使用C风格字符数组。
3.#include <sstream>字符串流
类似于文件流,字符串流就是说绑定了一个字符串的流,而这个字符串,可以是给出的,也可以像ofstream一样没有就建立。
方向:
这个就需要参考文件流了。
先把被绑定的字符串看做被绑定的文件,然后还是以内存为中心,
从绑定字符串读取数据到内存,就叫做in。
从内存往被绑定字符串添加数据,就就走out。
注意:P287说的istringstream的使用条件
当我们的工作是对整行文本进行处理,而其他一些工作是处理行内的单个单词时,通常可以使用istringstream。
即,我们将整行的一个string当做一个istingstream对象,每次的>>就是针对一个单词的。
4.#include <string> std::getline
这篇关于《C++ Primer 5th》读书笔记5---重读IO标准库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!