《CC++语言程序设计案例教程》课件_第8章文件.pptVIP

《CC++语言程序设计案例教程》课件_第8章文件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

**8.3.2格式化读写函数

C语言提供面向文件的格式化函数,即fscanf()、fprintf()。函数形式一般使用方式说明fscanf()fscanf(fp,格式字符串,输入表列)向指向的文件读取输入表列数据;若执行成功,则返回值为实际读取字符;若出错或文件结束,否则返回0fprintf()fprintf(fp,格式字符串,输出表列)把输出表列中所列输出项的值写入指向的文件中,若写入成功,则返回值为写入字符,否则为负数。表8.5格式化文件读写函数**说明:(1)?fscanf()从文件读取数据时,以制表符、空格字符、回车符作为数据项结束标志。(2)?fprintf()向文件写数据时,输出表列之间用逗号隔开。例如:在案例二中,使用fprintf(fp2,%d,count)将变量count(整数)写入fp2指向的exp2.txt文件中;使用fscanf(fp2,%d,count)将变量count的值为从fp2指向的exp2.txt文件中读出的整数。(3)printf()是面向终端的格式化输出函数。如果把fprintf()函数的第一个参数改为stdout,可以完成向标准输出设备(屏幕)的输出,作用同printf()。scanf()是面向终端的格式化输入函数。如果把fscnf()函数中的第一个参数改为stdin,可以完成由标准输入设备(键盘)向内存的输入,作用同scanf()。**例如以下程序:#includestdio.hmain(){charst1[20],st2[20];printf(input数组st1:);scanf(%s,st1);/*输入HELLOW*/printf(input数组st2:);fscanf(stdin,%s,st2);/*同样输入HELLOW*/printf(\n输出st1数组元素);printf(%s\n,st1);printf(输出st2数组元素);fprintf(stdout,st2);printf(\n);}程序运行结果如下:input数组st1:HELLOWinput数组st2:HELLOW输出st1数组元素:HELLOW输出st2数组元素:HELLOW**8.4文?件?的?定?位文件的读写操作都是从文件的某一个位置(称这个位置为读写位置)开始的。存放读写位置的指针为位置指针。每进行一次读写操作,文件的读写位置都自动发生变化。在C语言中,可以调用库函数来改变文件的读写位置,这种库函数称为文件定位函数,如表8.6所示。函数形式一般使用方式说明rewind()rewind(fp)将位置指针指向fp对应的文件的开始fseek()fseek(fp,offset,origin)位置指针移动到fp对应的文件的任意位置ftell()longftell(fp)得到fp对应的文件的当前位置指针相对于文件起始位置偏移的字节数表8.6文件定位函数**说明:在fseek()函数中,offset表示移动字节数,需为long数据类型;origin表示从何位置(文件首、文件尾、当前位置)开始计算位移量。除以上位置外,可使用fseek()函数使文件指针移动到字符的某一位置。offset为正值表示向后移动,offset为负值表示向前移动。例如,案例一中fseek(fp,3L,0)将文件指针从文件首向文件尾移动3个字节。(2)ftell()可以得到文件指针当前位置。ftell()返回一个长整型数,表示离文件开头的字节数,出错时返回-1L。起始点表示符号数字表示文件首SEEK_SET0当前位置SEEK_CUR1文件末尾SEEK_END2表8.7指针初始位置表示法**8.5出?错?的?检?测当我们对文件进行操作时,有时会出现错误,可以用错误检测函数来进行检测。C语言提供文件出错函数如表8.8所示。函数形式一般使用方式说明ferror()ferror(fp)函数返回0:文件操作出错;函数返回非0:文件操作正确clearerr()clearer(fp)清除文件结束标志和文件错误信息,将它们置0feof()feof(fp)函数返回0:文件指针已到文件末尾;函数返回非0:文件指针未到文件末尾表8.8文件出错函数**说明:(1)对文件的输入、输出操作都会产生一个ferror()值,通过检查ferror()值判断对文件的操作是否有信息丢失。使用

文档评论(0)

酱酱 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档