第8篇 C++ 流标准库.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
I/O流类列表 文件的概念 文件 存储在外部设备上的数据的集合。它可以使 数据得以长期保存。 C++程序中处理的数据文件按数据组织形式可分为: ASCII文件(文本文件) 文件中信息形式为ASCII码字符,每个字符占一个字节。 数字3.14159存储时占7个字节. 二进制文件(内部格式文件) 把内存中的数据按其在内存中的存储形原样输出到磁盘上。 数值数据按二进制方式存储,字符仍按ASCII方式存储。 数字3.14159存储时占4个字节. 文件操作 前面,我们讨论的输入输出都是以键盘为输入设备,显示器为输出设备。在实际应用中,常以磁盘文件作为输入/输出的对象。 输入(读文件) 从磁盘文件读取数据 输出(写文件) 将数据输出到磁盘文件。 例: get函数使用示例。 本程序的执行示例结果: I am a student. //键盘输入(Enter键结束) I am a student. //屏幕输出 Yuo are a worker. //键盘输入(Enter键结束) Yuo are a worker. //屏幕输出 We are learning the C++ language. //键盘输入(Enter键结束) We are learning the C++ language. //屏幕输出 输入流常用成员函数 ? getline函数 输入流对象名. getline(char *buf,int n,char Delim=‘\n’) 该函数最多获取n个字符并存入字符指针buf所指向的存储区中,缺省结束符为换行符,且自动将换行符转换为字符串结束标志符插入到字符串尾?该函数返回当前输入流对象? 此函数的结束条件除了上面提到的已读入n-1个字符?遇到换行符或指定结束符外,当遇到流输入结束符ctrl+z(EOF)时也结束(UNIX中为Ctrl+d)? 可见getline()函数和类似的get()函数的功能完全相同。 例:cin输入与cin.getline输入的区别? 本程序的执行示例结果: 输入一个英语句子:You are a student. 用cin读入的字符串是: You 字符数:3 用cin.getline读入的字符串是: are a student. 字符:15 * * 第二部分 C++面向对象程序设计 第八章 C++ I/O流标准库 本章课件制作:胡敏 本章内容 ? C++ I/O流概述 ? 输出流 ? 输入流 ? 格式化输入输出 8.1 C++ I/O流概述 在C++语言中没有定义专门的输入?输出(I/O)语句。输入?输出操作是通过I/O流实现的。在C++编译系统中带有一个面向对象的I/O软件包,这就是I/O流类库。 “流”(stream)实际上是一个字节序列,是指数据从一个位置流向另一个位置的抽象。在C++程序中,数据可以从键盘或外部文件流入到程序的数据结构中(输入),也可从程序中流向屏幕或外部文件(输出)。通常把从流中获取数据的操作(读操作)称为提取操作,而向流中添加数据的操作(写操作)称为插入操作。 8.1 C++ I/O流概述 在C++语言中没有定义专门的输入?输出(I/O)语句。输入?输出操作是通过I/O流实现的。在C++编译系统中带有一个面向对象的I/O软件包,这就是I/O流类库。 流实际上是一个字节序列,是指数据从一个位置流向另一个位置的抽象。在C++程序中,数据可以从键盘或外部文件流入到程序的数据结构中(输入),也可从程序中流向屏幕或外部文件(输出)。通常把从流中获取数据的操作(读操作)称为提取操作,而向流中添加数据的操作(写操作)称为插入操作。 1. C++I/O流的结构 其中,streambuf是一个抽象类。filebuf是文件缓冲类,用以实现文件的打开、读入、写出和关闭等操作。strstreambuf是字符串缓冲类,它支持在内存中进行提取和插入操作。conbuf是控制台缓冲类,它支持对屏幕的输出处理。 流缓冲区类的结构 Streambuf filebuf strstreambuf conbuf 8.1 C++ I/O流概述 1. C++I/O流的结构 输入输出流类的结构 8.1 C++ I/O流概述 ios istream ostream fstreambase strstreambase iostream ifstream ofstream fstream istrstream ostrstream strstream istream ifstr

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档