- 1、本文档共149页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
8.2.5 函数调用错误的检测 C语言提供了一些专门用于检查输入输出函数调用错误的函数。 1. 检查错误函数ferror() 调用各种输入输出函数时, 如果出错, 除了函数值可以反映外, 还可以调用ferror()函数进行检查。 函数的一般调用形式为 ferror(fp); 如果函数的返回值为零则调用成功, 否则调用出错。 在同一文件中, 每调用一次输入输出函数, 都将产生一个新的ferror()值, 因此应在每一次调用输入输出函数后, 立即检查ferror()函数的值。 在执行fopen()函数时, ferror()函数的初值自动置为0。 2. 复位错误函数clearerr() 作用: 将文件错误标志和文件结束标志置为0。 一般调用形式为 clearerr(fp); ferror()函数只要发现调用错误,则出错标志(非0)就一直保留, 直到遇见下一个输入输出函数或在调用clearerr(fp)函数后, ferror(fp)函数的值恢复为0。 8.3 非缓冲型文件输入/输出系统 缓冲型文件系统是高级磁盘输入输出系统,系统自动为这类文件开辟固定大小的缓冲区,它是通过文件指针访问文件的。 由于这类函数都将数据作为一个个字符构成的字符流来处理, 因此又称“流式函数”。 非缓冲型文件系统是低级磁盘输入输出系统, 系统不为这类文件自动提供缓冲区,用户必须自己开辟一个缓冲区并考虑如何使用它,这类文件用一个整数代表一个文件(文件说明符)。 非缓冲型文件的输入输出又称系统输入输出, 它不分字符、 字符串、 格式化等情况, 一次输入输出多少个数据由用户自己设定的缓冲区的大小来决定。 非缓冲型文件系统的低级输入输出函数属于Turbo C与DOS的接口函数, 这些低级输入输出函数为用户提供了在较低层次上对文件或外部设备进行访问的方法。 低级输入输出函数的原型包含在头文件io.h中, 使用时必须用#include io.h命令, 将输入输出函数包含到自己的源程序中。 8.3.1 打开文件函数open() open()函数用来打开一个非缓冲型文件,其一般调用形式为 open(文件名, 打开方式); 其中, 文件名指明了要打开的文件, 打开方式包括以下几种: 0 只读 1 只写 2 读写 如果文件打开成功, 则open()函数返回一个正整数, 称为文件说明符(又称文件号), 在文件关闭以前,文件说明符与打开文件相联系。 这个正整数相当于缓冲文件系统的文件指针。 如果文件打开失败, 则返回-1。 利用函数的返回值可以判断文件的打开是否成功。例如: if((fd=open(a.txt, 1))==-1) { printf(文件打不开, 请检查原因\n); exit(0); } 如果a.txt文件打开成功,则a.txt文件的文件说明符将保存在整型变量fd中; 如果fd的值为-1, 则a.txt文件打开失败。 如果打开的文件不存在,编译系统按“文件打开失败”处理,并不建立新文件。如果要建立新文件可以调用creat()函数。 8.3.2 关闭文件函数close() close()函数的作用是关闭已打开的文件,其一般调用形式为 close(fd); 其中,fd为整型变量,它是被关闭文件的文件说明符(即文件号)。执行close()函数以后,文件号被释放,文件被关闭。 如果文件关闭成功, 则close()函数返回 0;如果文件关闭失败, 则close()函数返回-1。 文件号是由系统在打开文件时分配的,每一个C语言编译系统规定了同时打开文件的最大个数,fd的数值是由1开始顺序递增的。由于C语言编译系统允许打开的文件数有限,因此, 不再使用的文件应及时关闭。 8.3.3 建立文件函数creat() creat()函数的作用是建立一个新文件,其一般调用形式为 creat(文件名, 打开方式); 其中,“文件名”指明所要建立的文件, “打开方式”的含义如下: 字符表示 取值 含义 S—IWRITE 1 允许写(含允许读) S—IREAD 0 允许读(只读文件) creat()函数调用成功, 则返回
您可能关注的文档
- AutoCAD2013实用教程 教学课件 作者 郝坤孝吕安吉季阳萍 编著 第3章 二维图形的绘制.ppt
- AutoCAD2013实用教程 教学课件 作者 郝坤孝吕安吉季阳萍 编著 第4章 二维图形的编辑.ppt
- AutoCAD2013实用教程 教学课件 作者 郝坤孝吕安吉季阳萍 编著 第6章 零件图及装配图.ppt
- AutoCAD2013实用教程 教学课件 作者 郝坤孝吕安吉季阳萍 编著 第7章 三维绘图基础.ppt
- AutoCAD案例应用教程 教学课件 作者 何友义 第5章.ppt
- AutoCAD操作教程 教学课件 作者 2010中文版 教程1 3 第1章.ppt
- AutoCAD操作教程 教学课件 作者 2010中文版 教程1 3 第3章.ppt
- AutoCAD操作教程 教学课件 作者 2010中文版 教程4 12 第4章.ppt
- AutoCAD操作教程 教学课件 作者 2010中文版 教程4 12 第5章.ppt
- AutoCAD操作教程 教学课件 作者 2010中文版 教程4 12 第6章.ppt
文档评论(0)