- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c面向对象程序设计第11章c的输入输出流
《C++面向对象程序设计》教学内容 第1章 C++概述 第2章 类和对象 第3章 面向对象程序设计概述 第4章 进一步学习类和对象 第5章 堆与复制构造函数 第6章 继承性:派生类 第7章 运算符重载 第8章 虚函数和多态性 第9章 模板 第10章 类库和C++的标准模板库STL 第11章 输入输出流 第12章 异常处理 第11章 C++的输入输出系统: I/O流库 11.1 C++的输入输出流(I/O Streams) 11.2 重载输入输出运算符 11.3 输入输出格式控制 11.4 文件的输入输出操作 11.1 C++的输入输出流 I/O流的概念 输出流 输入流 输入/输出流 为什么要有C++流类库 C语言的输入输出系统不支持拥护自定义的对象或数据类型,如一定义: struct sample{ int i ; float f; char *ch; }s1; 不能用输出函数来输出以上结构变量: printf(“%sample”,s1); 为什么要有C++流类库 C++中,用户自定义的对象很多。C++的类机制允许它可以建立一个可控制的输入输出系统。可以通过重载“”和“”算符来解决以上的问题。 流 stream 在数据从一个对象流动到另一个对象的过程中,无论是否对数据进行缓冲或对数据进行格式变换,这种流动都被抽象为流。 流类库 流类库是提供一组类,程序利用它们可以方便的与外部世界交换数据. C++的流类库是用继承的方法建立起来的一个输入输出类库。 流类库有两个基类,即streambuf类和ios类。 streambuf类提供对缓冲区的低级操作,如缓冲区的设置、缓冲区的读写等。 ios类用来完成检查错误的格式化输入、输出。 流类库的结构 I/O流类继承层次 ios istream istrstream istream_withassign ifstream ostream ostrstream ostream_withassign ofstream I/O流类继承层次 class ios; class istream: virtual public ios; class ostream: virtual public ios; class iostream: public istream,public ostream; 又如: class istream_withassign: public istream; class ostream_withassign: public ostream; 输出流和输出流对象 输出流对象是信息流动的目标. ostream, ofstream和ostrstream是三个最重要的输出流. ostream类通过派生类ostream_withassign支持预先定义的流对象 cout 标准输出 cerr 标准错误输出,没有缓冲,发给它的内容立即输出 clog 类似于cerr,但有缓冲,缓冲区满时被输出. ofstream类支持磁盘文件输出. ostrstream类支持输出字符串。 流类库和流 C++中预定义了流类对象: 标准输入流 cin 标准输出流 cout 非缓冲的出错流 cerr 和缓冲的出错流 clog 每个流都和一种与设备相联系: 与输入设备(如键盘)联系的流为输入流; 与输出设备(如屏幕)联系的流为输出流。 流类对象的操作 流类对象在使用前要被建立,在使用后要被删除; 使用特定的操作能够从流中获取数据 称为提取操作 或向流中添加数据 称为插入操作 带空格space的字符串的输入方法 #include iostream.h void main( ) { //读入一串字符到line数组,以‘t’终止 char line[100]; cout“Type a line terminated by ‘t’” endl; cin.getline(line,100,’t’); coutline; } 注意:在使用读入字符串时,在遇到第一个空格字符后输入将停止。 11.2 重载I/O运算符 对于“”运算符的重载 istream operator (int i); istream operator (long I); istream operator (double d); istream operator (char c); istream operator (const char *s); 11.2.1 重载输出算符“” 定义输出运算符重载函数的一般格式如下: ostream operator(ostrea
文档评论(0)