网站大量收购闲置独家精品文档,联系QQ:2885784924

c语言教程(课件)表第9章.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言教程(课件)表第9章

第十三讲 文件 C文件概述 文件的处理方法 文件类型指针 文件的打开(fopen函数) 说明 文件的关闭(fclose函数) fputc函数和fgetc函数 fread函数和fwrite函数 例题分析 fprintf函数和fscanf函数 文件的定位 rewind函数 fseek函数和随机读写 ftell函数 ferror函数 chearerr函数 非缓冲文件系统 open 函数 close 函数 creat函数 read函数 write 函数 lseek函数和随机读写 常用的缓冲文件系统函数 常用的非缓冲文件文件函数 例student2 综合:成绩管理 在调用各种输入输出函数(如putc,getc,fread,fwrite等)时,如果出现错误,除了函数返回值有所反映外,还可以用ferror 函数检查。它的一般调用形式为: ferror(fp); 如果ferror返回值为0(假),表示未出错.如果返回一个非零值,表示出错。 应该注意,对周一个文件每一次调用输入输出函数,均产生一个新的ferror 函数值,因此,应当在调用一个输入输出函数后立即检查ferror函数的值,否则信息会丢失。 在执行fopen函数时,ferror函数的初始值自动置于0。例L9-9-4 它的作用是使文件错误标志和文件结束标志置为0.假如在调用一个输入输出函数时出现错误,ferror函数值为一个非零值.在调用clearerr(fp)后,ferror(fp)的值变成0. 只要出现错误标志,就一直保留,直到对同一文件调用clearerr函数或rewind函数,或任何它一个输入输出函数,或任何其它一个输入函数。 缓冲输入输出系统又称高级磁盘输入输出系统.非缓冲输入输出系统又称为低级磁盘输入输出系统,系统不为这类文件自动提供文件缓冲区,程序设计必须自己设定一个缓冲区并考虑如何使用它们.非缓冲文件系统提供了一些输入输出函数,用于对这进行输入输出操作. 缓冲文件系统(高级I/O系统)是有文件指针的,通过文件指针访问文件,而非缓冲文件系统(低级磁盘I/O系统)则没有文件型指针,不是靠文件指来访问文件,而是一个整数代表一个文件(相当于FORTRAN等语言的“文件号”),这个整数称为“文件说明符.”通过下面介绍的几个常用函数可以对这种方式有一大概的了解. 用来打开一个非缓冲文件.它的一般形式为 open (文件名,打开方式) 打开方式指该文件打开后的工作方式,即读写方式. 方式 作用 0 只能读 1 只能写 2 可以读/写 例如,open(“Li_1”,0),打开一个名为“Li_1”的文件,只能用于输入. 如果打开成功,open函数返回一个正整数;如果文件夹因故未能打开,则返回-1.open函数一般是这样使用的(设fd已定义为整形变量): if((fd=open (“A”,1)= =-1) { printf(“ cannot open file /n”); exit(0); } 如果要打开的文件不存在,多数C编译按“打开失败”处理,不产生新的文件.但有的编译可以用open 函数建立一个新文件.例如,上面的打开操作中,如果原来磁盘上不存在一个名为“A”的文件,则open函数建立一个为“A”的文件,可供写数据.另一些C编译系统则只能用creat 函数建立 一个新文件. 用来关闭已打开的文件,其调用形式为 close(fd); fd 为整型变量,它是“文件说明符”(即文件号).在打开文件时,open函数返回一个整数,这就是“文件说明符”(文件号).在未关闭此文件之前,此文件说明符与该文件相联系,或者说,它代表一个确定的文件.执行close 函数后,文件号释放,它不再与一个确定 的文件相联系.它可以再被用来与另一文件相联系.文件号是由系统在打开时分配的,而不是由程序设计设计者指定的.每一个C编译系统规定了可以打开的文件的最大数字. 由于一个C编译系统允许同时打开的数目是有限的.因此,凡不再使用的文件应及时用close 函数关闭. 如果关闭操作失败(如不存在此文件,可把磁盘从驱动取出),则close 函数返回-1;成功时返回零. 有的C编译系统(例如Turbo C)不允许用open函数建立一个新文件,它提供creat函数用来建立新文件.其调用形式为 creat(文件名,打开方式); 它返回一个整数文件号.例如: fd=creat(“A”,1);

文档评论(0)

150****4233 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档