1、流的控制
iomanip在使用格式化I/O时应包含此头文件。
stdiostream用于混合使用C和C + +的I/O机制时,例如想将C程序转变为C++程序
2、类继承关系
ios是抽象基类,由它派生出istream类和ostream类, iostream类支持输入输出操作,iostream类是从istream类和ostream类通过多重继承而派生的类
类ifstream继承了类istream,类ofstream继承了类ostream,类fstream继承了 类iostream
iostream头文件中4种流对象
对象
含义
对应设备
对应的类
c语言中相应的标准文件
cin
标准输入流
键盘
istream_withassign
stdin
cout
标准输出流
屏幕
ostream_withassign
stdout
cerr
标准错误流
屏幕
ostream_withassign
stderr
clog
标准错误流
屏幕
ostream_withassign
stderr
cout补充
1、用“cout<
并根据其类型选择调用与之匹配的运算符重载函数。这个过程都是自动的,用户不必干预。
如果在C语言中用prinf函数输出不同类型的数据,必须分别指定相应的输出格式符,十分麻烦,而且容易出错
2、cout流在内存中对应开辟了一个缓冲区,用来存放流中的数据,当向cout流插 人一个endl时,
不论缓冲区是否已满,都立即输出流中所有数据,然后插入一个换行符, 并刷新流(清空缓冲区)。
注意如果插人一个换行符”\n“(如cout<
3、在iostream中只对"<>"运算符用于标准类型数据的输入输出进行了重载,但未对用户声明的类型数据的输入输出 进行重载。
如果用户声明了新的类型,并希望用"<>"运算符对其进行输入输出,按照重运算符重载来做。
cout 流通常是传送到显示器输出,但也可以被重定向 输出到磁盘文件,而cerr流中的信息只能在显示器输出
cerr是不经过缓冲区,直接向显示器上输出有关信息,而clog中的信息存放在缓冲区中,缓冲区满后或遇endl时向显示器输出
3、标准输入流 cin
重点掌握的函数
cin.get() //读入一个字符并返回它的值
cin.get(一个参数) //读入一个字符并把它存储在ch
cin.get(两个参数) //可以读取字符串
cin.get(三个参数) //可以读字符串
cin.getline()
cin.ignore()