c语言文件操作总结.pdfVIP

  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文档。上传文档
查看更多
c语言文件操作总结

C 语言文件操作总结 1 文件 文件代表字节序列。fopen()函数将一个文件和流关联起来,并初始化一个类 型为FILE 的对象,此对象包含控制此流的所有信息。这样的信息包括指向缓冲 区的指针、文件读写位置的指针,以及指示错误和文件尾情况的标志。 打开文件的每个函数都会返回“指向FILE 对象的指针”,此FILE 对象包含 此文件的流。一旦打开文件,就可以调用函数对数据和流进行处理。处理函数都 需要把FILE 指针当自变量。 I/O 链接库也包含了“作用于文件系统”的函数,并且这些函数需要把文件 文件名作为参数。使用这些函数不需要事先打开文件。函数包括: remove() 函数:删除一个文件(或者空目录); rename() 函数:改变文件(或目录)的名称,自变量分别为旧文件名和新文 件名; 这两个函数的返回值都是int 类型,成功是返回0,失败时返回非0 值。 2 缓冲区 2.1 缓冲方式 处理文件时,读写个别字符通常效率不佳,因此,流有缓冲区。缓冲区可以 把许多字符集中起来,这些字符会以内存区域的方式“整体”进入文件。 流的三种缓冲方式: (1)全缓冲 只有在缓冲区满时缓冲区内的字符才会被正常地转移。 (2 )行缓冲 只有当换行字符被写入缓冲区,或者缓冲区满了,缓冲区内的字符才会被正 常转移。 (3 )无缓冲 字符会尽快地被转移。 2.2 缓冲区的刷新 在C 中可以调用fflush()函数显示地把缓冲区内的字符转移到相关文件。在 C++ 中,可以使用flush 操作符进行缓冲区的强制刷新;也可以使用endl 操作符, 它不但实现换行操作,也对输出缓冲区进行刷新。 2.3 改变缓冲模式 当使用fopen()打开一个正常的文件时,新的流是“全缓冲的”。当打开互动 设备是,设备文件会被关联到“行缓冲”流。 在打开文件之后,并且在进行第一次输入或输出之前,可以使用 setbuf()或 setvbuf()函数来改变缓冲模式。 1)void setbuf(FILE *steam, char *buf); 主要用于打开和关闭缓冲机制。 2 )int setvbuf(FILE *stream, char *buf, int type, unsigned size); 参数:stream :指向流的指针; buf : 期望缓冲区的地址; type : 期望缓冲区的类型: _IOFBF(满缓冲):当缓冲区为空时,从流读入数据。或者当缓冲区满时, 向流写入数 据。 _IOLBF(行缓冲):每次从流中读入一行数据或向流中写入一行数据。 _IONBF(无缓冲):直接从流中读入数据或直接向流中写入数据,而没有 缓冲区。 size : 缓冲区内字节的数量。 3 标准的流 每个 C 程序一开始就有三个标准流可以用。这些流不需要被显示得打开。 表1-1 列出了他们的FILE 指针。 表1-1. 标准的流 FILE 指针 常用名称 缓冲模式 stdin 标准输入 行缓冲 stdout 标准输出 行缓冲 stderr 标准错误输出 无缓冲 stdin 流通常关联到键盘,stdout 和stderr 则关联到显示器。这些关联可以利 用“重定向”的方式来改变。可以通过freopen()函数重新定向,或者程序执行时 操作系统也可以进行重新定向。 4 打开和关闭文件 4.1 打开文件 标准链接库提供fopen()函数来打开文件。特殊情况下,还可以使用freopen() 和tmpfile() 函数来打开文件。 1)FILE *fopen(

文档评论(0)

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

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

1亿VIP精品文档

相关文档