- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 C++的I/O系统
8.1 知识要点
1.C++语言的“流”是指信息从外部输入设备(如键盘、磁盘等)向计算机内部(内存)输入和从内存向外部输出设备(显示器、磁盘)输出的过程。这种输入输出过程被形象地比喻为“流”。
2.C++系统中的所有I/O类均包含在iostream.h 、fstream.h、strstream.h这三个系统头文件中。
3.C++系统编译预处理时,要对# include命令进行“文件包含”处理,把该命令中指定的文件中的全部内容嵌入到该命令的位置,再编译整个C++文件,生成相应的目标代码程序。“文件包含”命令可以节省程序设计人员的重复劳动,也可以共享一些相同的程序段。
C++语言不仅提供了现成的I/O类库供用户使用,而且还为用户进行标准I/O操作定义了4个类对象,它们分别是cin、cout、cerr、clong
4.用格式控制符进行格式化输入、输出
5.所谓“文件”一般是指:存储在外部介质上的数据的集合。文件可用于存入程序代码,也可用于存放数据。
6.C++语言的文件名也是由文件的主名和扩展名两部分组成,它们之间用“.”号分隔。文件的主名是由用户命名的一个有效的C++标识符,为了同其他软件系统兼容,一般不超过8个有效字符。
7.C++语言把文件看作是一个字符(字节)序列,即由一个一个字符的数据顺序组成。根据数据的组织形式可分为ASCII文件和二进制文件两种。ASCII文件又称为文本(text)文件或字符文件,它的每一个字节放一个ASCII代码,代表一个字符。二进制文件又称为字节文件,是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。
8.对文件的操作
要在程序中使用文件,就要在程序的开始包含预处理命令:
#include fstream.h
对一般文件(主要是磁盘文件)的操作过程是:打开,读/写,关闭。
用户对标准I/O文件不需要进行打开/关闭,标准I/O文件函数分为以下三种:
(1)字符I/O函数 字符输入函数getchar ( )和字符输出函数putchar ( )。
(2)字符串I/O函数 字符串输入函数gets ( )和字符串输出函数puts ( )。
(3)格式化I/O函数 格式化输入函数scanf ( )和格式化输出函数printf ( )。
9.对字符文件的操作
(1)字符文件
在字符文件中,以换行符‘\n’结束的一串字符称为记录;终端屏幕上输出的一行字符就相当于一条记录;交互输入时,用户通过键盘输入,以回车键结束的一串字符也是一条记录。
(2)向字符文件写入数据 向字符文件写入数据有2种方法。
1)调用从ostream流类中继承来的插入操作重载函数。使用方法同交互输出过程,但这时插入操作符的第一个操作数应是某个定义过的文件对象而不是cout。
(3)从字符文件读取数据到内存变量 从打开的字符文件中输入数据到内存变量有3种方法。
10.对字节文件(二进制文件)的操作
(1)字节文件
与字符文件不同的是,字节文件中存放的是可供机器直接读取的二进制代码,在打开方式中带有ios::binary选项
(2)建立二进制文件和write()成员函数 一个文件被用户定义的一个文件流对象按字节方式打开后,通过文件流对象调用在ostream流类中定义的write()成员函数就能够向文件流对象所对应的文件中写入数据。
(3)访问二进制文件和read()成员函数
从字节文件读数据,就是把具有一定字节数的内容原原本本地复制到内存中由指定字符指针所指向的内存缓冲区中,所读内容是从当前文件指针所指位置开始读取,然后文件指针自动向后移动所读取内容的字节数。
11.随机访问文件
(1)随机访问文件是可以使用位移量对其中的数据进行访问,“位移量”指以当前位置(开始点或当前位置或文件末尾)为基点,移动的字节数。
(2)C++语言既支持顺序访问文件也支持随机访问文件。为实现对文件的随机访问,fstream文件类中定义了以下4个成员函数:seekg ( )、tellg ( )、seekp ( )和ellp ( )。seekg ( )和tellg ( )带后缀g表示get,这两个函数用于从文件中读取数据的情况;函数seekp ( )和tellp ( )带后缀p表示put,这两个函数用于向数据文件中写数据的情况。
8.2 例题分析
例题1:说明下面程序的格式控制符的作用
#include iostream.h
#include iomanip.h
void main()
{ int number1=15;
double number2=6.54321;
coutDecimal:decnumber1endl;
coutHexadecimal:hexnumber1endl;
coutHexadecimal:hexs
文档评论(0)