第9章-流类库与输入课件.pptx

上传人(卖家):晟晟文业 文档编号:5168382 上传时间:2023-02-15 格式:PPTX 页数:24 大小:887.90KB
下载 相关 举报
第9章-流类库与输入课件.pptx_第1页
第1页 / 共24页
第9章-流类库与输入课件.pptx_第2页
第2页 / 共24页
第9章-流类库与输入课件.pptx_第3页
第3页 / 共24页
第9章-流类库与输入课件.pptx_第4页
第4页 / 共24页
第9章-流类库与输入课件.pptx_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、C+程序设计新世纪应用型高等教育教材编审委员会 组编主编 罗烨 李秉璋第二版新世纪应用型高等教育软件专业系列规划教材第9章 流类库与输入/输出9.1 流的概念3操作系统是将键盘、屏幕、打印机和通信端口等设备作为扩充文件来处理的。从操作系统是将键盘、屏幕、打印机和通信端口等设备作为扩充文件来处理的。从C+程序员程序员角度来看角度来看,这些设备与磁盘文件并无区别这些设备与磁盘文件并无区别,与这些设备的交互也是通过与这些设备的交互也是通过I/O流流来来实现实现的的。在在C+中中,I/O可以可以分为分为:面向标准设备的面向标准设备的I/O、面向文件的面向文件的I/O、面向字符串的面向字符串的I/O三三

2、类类。面向标准设备的。面向标准设备的I/O是是指程序从标准输入设备键盘获取数据指程序从标准输入设备键盘获取数据,把程序中的数据输出把程序中的数据输出至至标准标准输出设备显示器输出设备显示器;面向文件的面向文件的I/O是是指程序从外存储器的文件中获取数据指程序从外存储器的文件中获取数据,把数据保把数据保存到外存储器的文件中存到外存储器的文件中;面向字符串的面向字符串的I/O是是指从程序的字符串变量中获取数据指从程序的字符串变量中获取数据,把把数据数据保存保存到字符串变量中。本章将介绍这三种到字符串变量中。本章将介绍这三种I/O。9.2 C+的基本流类体系4C+的的流类库是用继承方式建立的一流类库

3、是用继承方式建立的一个个I/O类库类库,由抽象类由抽象类ios及其及其派生类派生类构成构成ios类类体系体系,共同完成共同完成I/O操作操作。ios类类的体系结构如的体系结构如图图9-1所示所示。9.2.1 流类库9.2 C+的基本流类体系5在在C+的的流类库中定义流类库中定义了了4个全局个全局文本流对文本流对象象:cin、cout、cerr和和clog。使用这使用这4个流对象个流对象可以可以完成基本人机交互功能。其中完成基本人机交互功能。其中cin是是istream类的类的实实例例,称为标准输入流称为标准输入流(对象对象),以以键盘为其对应的标准设键盘为其对应的标准设备备,通过流提取运算符通

4、过流提取运算符,可以从键盘上输入数据。可以从键盘上输入数据。cout是是ostream类类的实例的实例,称为标准输出流称为标准输出流(对象对象),以以显示器为标准设备。通过流插入运算符显示器为标准设备。通过流插入运算符,可以将可以将数据数据输出输出至显示器。至显示器。cerr、clog称为称为标准错误输出流。标准错误输出流。标准错误输出设备也是显示器。标准错误输出设备也是显示器。9.2.2 标准流对象9.3 标准设备的输入/输出6istream类提供类提供了格式化和非格式化的输入功能。最常用的输入方法是在标准了格式化和非格式化的输入功能。最常用的输入方法是在标准输入流输入流对象对象cin上使用

5、上使用提取运算符提取运算符“”输入数据输入数据。格式如下。格式如下:9.3.1 输入流9.3 标准设备的输入/输出7ostream类提供类提供了格式和非格式的输出功能。最常用的输出方法是在标准输出流了格式和非格式的输出功能。最常用的输出方法是在标准输出流对对象象cout上使用上使用插入运算符插入运算符“”输出数据输出数据。格式如下。格式如下:插入运算符插入运算符“”可以可以接受任何表达式接受任何表达式,包括函数调用包括函数调用,只要其结果是能被插入只要其结果是能被插入运算符运算符接受接受的数据。输出流对象的数据。输出流对象cout将将数据数据从从C+机内机内格式转换成文本格式后格式转换成文本格

6、式后,输出至标准输出至标准输出输出流流对象。插入运算符返回对象。插入运算符返回cout流对象流对象的引用的引用,所以插入运算符也可以连用。所以插入运算符也可以连用。9.3.2 输出流9.3 标准设备的输入/输出81.输入流输入流成员函数成员函数9.3.3 标准输入/输出流成员函数9.3 标准设备的输入/输出9进行进行I/O操作操作时时,可能会发生各种错误。特别是从输入流中提取数据可能会发生各种错误。特别是从输入流中提取数据,出现流错误出现流错误的可能的可能性性较大较大,例如输入数据的类型、遇到文件结束等。程序需要检测这些错误例如输入数据的类型、遇到文件结束等。程序需要检测这些错误,并做相应并做

7、相应的处理的处理。为了检测出数据流产生的各种错误为了检测出数据流产生的各种错误,提高程序的健壮性提高程序的健壮性,在在ios类类中有一个称为流中有一个称为流错误状错误状态态字的保护型字的保护型整数整数state,用用该整数的若干二进制位保存流的当前状态。该整数的若干二进制位保存流的当前状态。9.3.4 数据流的错误检测9.3 标准设备的输入/输出109.3.4 数据流的错误检测*9.4 流的格式控制111.格式格式状态字状态字9.4.1 使用ios类的格式控制函数*9.4 流的格式控制121.格式格式状态字状态字9.4.1 使用ios类的格式控制函数*9.4 流的格式控制132.格式格式控制函

8、数控制函数9.4.1 使用ios类的格式控制函数*9.4 流的格式控制142.格式格式控制函数控制函数9.4.1 使用ios类的格式控制函数*9.4 流的格式控制159.4.2 使用预定义的操作子*9.4 流的格式控制169.4.2 使用预定义的操作子9.5 文件的输入/输出179.5.1 文件的基本概念C+把文件把文件看成一个有序的字节流看成一个有序的字节流,称为流式文件。文件操作前称为流式文件。文件操作前,要打开文件。要打开文件。文件文件打开打开后后,该文件就和程序中的文件流对象建立了关联。在程序中就通过该文件流对象对该文件就和程序中的文件流对象建立了关联。在程序中就通过该文件流对象对打开

9、的文件打开的文件进行读进行读/写操作。写操作。9.5 文件的输入/输出189.5.2 文件的操作步骤在在C+中使用中使用文件的步骤是固定的文件的步骤是固定的:(1)建立一个文件流对象建立一个文件流对象;(2)打开文件打开文件,将文件流对象和要处理的外存储器上的文件建立关联将文件流对象和要处理的外存储器上的文件建立关联;(3)读写文件读写文件,通过流对象的成员函数或插入通过流对象的成员函数或插入/提取运算符完成对文件的读写提取运算符完成对文件的读写;(4)关闭文件关闭文件,当不再使用文件时当不再使用文件时,要通过关闭文件流对象要通过关闭文件流对象,解除文件流对象与文件的解除文件流对象与文件的关联

10、关联。之后该文件流对象还可以继续与其他文件建立关联。之后该文件流对象还可以继续与其他文件建立关联。9.5 文件的输入/输出199.5.2 文件的操作步骤1.建立建立一个文件流对象一个文件流对象使用文件前使用文件前,必须先建立文件流类对象。建立文件流对象的语法形式为必须先建立文件流类对象。建立文件流对象的语法形式为:9.5 文件的输入/输出209.5.2 文件的操作步骤4.关闭文件关闭文件文件操作结束后文件操作结束后,要显式关闭该文件。其语法形式为要显式关闭该文件。其语法形式为:9.5 文件的输入/输出219.5.4 二进制文件的读/写1.使用使用get和和put函数函数读写任意格式的读写任意格

11、式的文件文件2.使用使用read和和write函数函数成组成组读写读写9.5 文件的输入/输出229.5.5 二进制文件的随机读写*9.6 字符串流的输入/输出239.5.5 二进制文件的随机读写串流类包括输入字符串流串流类包括输入字符串流类类istrstream、输出、输出字符串流类字符串流类ostrstream、字符串、字符串流流类类strstream。由于字符串流对象关联的不是文件由于字符串流对象关联的不是文件,而是内存中的一个字符数组而是内存中的一个字符数组,因此和因此和文件文件I/O的差的差别别在于不需要打开和关闭串流对象。在建立字符串流对象时在于不需要打开和关闭串流对象。在建立字符串流对象时,通过给定参数来通过给定参数来确立确立字符串字符串流与字符数组的关联流与字符数组的关联,即通过串流类构造函数来建立关联。即通过串流类构造函数来建立关联。THANKS

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(第9章-流类库与输入课件.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|