C 程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt

C 程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt

ID:58891169

大小:195.00 KB

页数:64页

时间:2020-09-30

C  程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt_第1页
C  程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt_第2页
C  程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt_第3页
C  程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt_第4页
C  程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt_第5页
资源描述:

《C 程序设计 教学课件 ppt 第12章_流类库与输入输出.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第12章流类库与输入输出清华大学郑莉1目录12.1IO流的概念及流类库结构12.2输出流12.3输入流12.4输入/输出流212.1I/O流的概念及流类库结构C++语言将数据从一个对象到另一个对象的传输(流动)抽象为流程序运行过程中,程序不可避免的会与外界进行信息交换时,在这个信息交换的过程中,必然存在着两个对象,一个是程序中的对象,另一个是文件对象。而且,在这两个对象中,任何一个时刻必然有一个对象是数据的生产者,而另一个对象是数据的使用者或者说消费者流就是负责在数据的生产者与数据的消费者之间架设桥梁,并管理数据在两者之间流动的这样一个抽象概念312.1I/O流的概念及流类库结构程序通过流

2、来控制数据流动的过程首先,程序建立一个流对象,并且指定该流对象与哪个文件对象连接当连接完成后,程序就只操作流对象,而流对象则通过文件系统对与其连接的文件对象进行作用,从而就完成了程序与文件对象之间的数据流动流对象是程序与文件对象进行数据交换的惟一方式,它也就成为了两者进行数据交换的界面412.1I/O流的概念及流类库结构在流操作中有两个最基本的操作,一个是从流中获取数据,对于流来说就是对流进行读取操作,在流操作中将这种操作称为(从流中)提取;另一个是从向流中插入数据,对于流来说就是对流进行写入操作,在流操作中将这种操作称为(向流中)插入cin语句中使用到的运算符“>>”是提取符,而cout

3、语句中使用到的运算符“<<”是插入符512.1I/O流的概念及流类库结构I/O流类库以类模板为基础,通过类模板为I/O流类库提供了大多数功能,并且这些功能均可以作用于不同的数据类型在C++语言里使用的字符共有两种,我们之前接触过的字符为窄字符,它们均为单字节字符,占用一个字节的存储空间;还有一类我们没有接触过的字符为宽字符,它们为多字节字符,占用两个或两个以上字节的存储空间。为了能够支持这两种字符,I/O流类库中提供了两组类模板实例,它们分别支持窄字符和宽字符,这些实例化类型在头文件iosfwd中定义612.1I/O流的概念及流类库结构在使用cin和cout语句的时候,必须要包含的头文件是

4、iostream,这个头文件的作用是完成标准设备上的输入/输出操作,里面声明了8个预定义的流对象来完成这些操作:cin、cout、cerr、clog、wcin、wcout、wcerr、wclog前缀为“w”的流对象是用于支持宽字符的而支持宽字符的I/O流类在各方面与支持窄字符的I/O流类是非常类似的在本章中,只介绍支持窄字符的I/O流类712.1I/O流的概念及流类库结构面向窄字符的类层次结构812.1I/O流的概念及流类库结构I/O流类库中的常用类类名说明头文件抽象I/O流类基类iosI/O流类基类ios输入流类istream通用输入流类以及其它输入流类的基类istreamifstrea

5、m文件输入流类fstreamistringsteam字符串输入流类sstream输出流类ostream通用输出流类以及其它输出流类的基类ostreamofstream文件输出流类fstreamostringsteam字符串输出流类sstream912.1I/O流的概念及流类库结构I/O流类库中的常用类类名说明头文件输入/输出流类iostream通用输入/输出流类以及其它输入/输出流类的基类istreamfstream文件输入/输出流类fstreamstringstream字符串输入/输出流类sstream流缓冲区类streambuf抽象流缓冲区类基类streambuffilebuf磁盘文件

6、流缓冲区类fstreamstringbuf字符串流缓冲区类sstream1012.2输出流在C++语言的I/O流类库中,最重要的输出流类有三个:ostream、ofstream和ostringstreamcout、cerr、clog是ostream类的常用对象cout——标准输出;cerr——标准错误输出,它没有缓冲,因此发给它的内容立即输出到标准输出设备;clog——功能类似于cerr,但是它有缓冲,发给它的内容直到缓冲满的时候才输出到标准输出设备这3个对象的使用方法是相似的,都类似于cout“语句”的使用1112.2输出流使用插入运算符与操纵符插入运算符“<<”,它的作用是将字节传到一

7、个输出流对象,这个流对象既可以是编译系统预先定义好的cout等对象,也可以是我们自己声明的输出流对象(如何自行声明输出流对象将在后面介绍)C++语言还预先定义了一批操纵符(manipulator)和插入运算符结合起来使用,就可以非常灵活的控制输出格式操纵符都定义在ios_base类中(例如十六进制操纵符hex())或者头文件iomanip中(例如设定浮点小数位数操纵符setprecision())1212.2输出流例12

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。