C++面向对象程序设计[杜茂康等编著]ch9.pptVIP

C++面向对象程序设计[杜茂康等编著]ch9.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 文件与流 C++具有一个功能强大的I/O类继承体系结构用于处理数据的输入/输出问题,该体系结构不仅提供了对系统内置数据类型的输入/输出操作,而且允许程序员通过重载扩展其功能以实现自定义数据类型的输入和输出操作。 本章主要介绍C++流的基本结构,数据的输入输出及其格式化问题,同时还介绍了C++文件的编程技术。 9.1 C++ I/O流及流类库 1、流的概念 所谓流,是指数据的有向流动,即数据从一个设备流向另一个设备 。 流实际上是一种对象,它在使用前被建立,使用后被删除。数据的输入/输出操作就是从流中提取数据或者向流中添加数据。 通常把从流中提取数据的操作称为析取,即读操作;向流中添加数据的操作称为插入操作,即写操作。 9.1 C++ I/O流及流类库 2、C++ I/O流类的继承结构 C++建立了一个十分庞大的流类库来实现数据的输入/输出操作,其中的每个流类实现不同的功能,这些类通过继承组合在一起。 9.1 C++ I/O流及流类库 3、C++主要的流类简介 streambuf主要作为其他类的支持,定义了对缓冲区的通用操作,如设置缓冲区,从缓冲区中读取数据,或向缓冲区写入数据等操作 filebuf类使用文件来保存缓冲区中的字符序列。它定义了文件读、写、打开、关闭等常用操作。 ios是所有流类的基类,提供对流状态进行设置的主要功能。如文件数据的格式码设置与取消,关链文件缓冲区借以实现数据读写等 9.1 C++ I/O流及流类库 istream是输入流类,实现数据输入的功能; ostream是输出流类,实现数据输出的功能; iostream是istream和ostream的派生类,它继承了istream类和ostream类的行为,支持数据输入、输出的双向操作,在程序中常通过它来实现数据的输入与输出功能。 fstreambase从ios派生,提供了文件操作的许多功能,作为其他文件操作类的公共基类。 ifstream类用来实现文件读取操作, ofstream类用来实现文件写入操作。 fstream继承了fstreambase和iostream类的功能,实现了文件读/写的双向操作。 9.1 C++ I/O流及流类库 4、C++预定义的输入/输出流对象 为了便于程序数据的输入/输出,C++预定义了几个标准输入/输出流对象。在程序中可以直接引用它们来输入/输出数据。如下表所示 9.2 使用I/O成员函数 1、用Cin输入数据的问题 用cin输入字符串数据时,如果字符串中含有空白就不能完整输入。因为遇到空白字符时,cin就认为字符串结束了。 【例9-1】 用cin输入字符串的问题。 //Eg9-1.cpp #includeiostream using namespace std; void main(){ char a[50]; coutplease input a string: ; cina; coutaendl; } 9.2.1 istream流中的常用成员函数 1、istream类定义了许多用于从流中提取数据和操作文件的成员函数 ,如下所示 class istream : virtual public ios { public: istream operator(double ); //具有许多operator重载成员函数 ...... int get(); istream get(char *,int,char =\n); istream get(char ); istream getline( char *,int,char =\n); istream read(char *,int); istream ignore(int =1,int =EOF); int peek(); istream putback(char); ...... }; 9.2.1 istream流中的常用成员函数 2、几个常用的输入流成员函数 (1)int get( ) (2)istream get( char * c, int n,char =\n) (3)istream read(char *c, int n); (4)istream ignore(int =1,int =EOF) (5)istream getline(char *c,int n,char =\n); 【例9-2】 用函数get和getline读取数据。 #include iostream using namespace std; void main(){ char c,char a[50],char s1[100]; coutuse get() input char: ; while((c=cin.

文档评论(0)

wxc6688 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档