C语言从入门到精通——进阶6 C语言文件操作

本文详细介绍了文件在程序设计中的概念和作用,包括程序文件和数据文件的区分,以及文本文件和二进制文件的区别。重点讲解了文件指针、文件的打开与关闭、顺序读写和随机读写操作。文件缓冲区的概念也被提及,用于优化CPU与I/O设备的速度匹配。此外,还讨论了如何判断文件读取是否到达结尾以及如何进行文件定位。
摘要由CSDN通过智能技术生成

使用文件——将数据直接存放在电脑的硬盘上,数据持久化 

什么是文件

磁盘上的文件是文件

程序设计中一般有两种:程序文件、数据文件

程序文件:源程序文件(.c)目标文件(.obj)可执行程序(.exe)

数据文件:文件的内容不一定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或者输出内容的程序

本章讨论数据文件

文件名:文件路径+文件名主干+文件后缀

文件类型

文本文件:在外存上以ASSCII码的形式存储,则需要在存储前转换

二进制文件:数据在内存中以二进制的形式存储,不加转换的输出到外存

文件指针

文件类型指针

每个被使用的文件都在内存中开辟了一个相应的文件信息区,用来存放文件相关的信息

这些信息是保存在一个结构体变量中的,该结构体类型是有系统声明的,取名为FILE

FILE* pf;//文件指针变量

定义pf是一个指向FILE类型数据的指针变量,可以使pf指向某个文件的文件信息区(是一个结构体变量),通过该文件信息区中的信息就能够访问该文件。即通过文件指针变量能够找到与它关联的文件。

文件的打开和关闭

FILE * fopen ( const char * filename, const char * mode );

int fclose ( FILE * stream );

文件的顺序读写

 文件的随机读写

fseek

根据文件指针的位置和偏移量来定位文件指针 

int fseek ( FILE * stream, long int offset, int origin );

ftell

返回文件指针相对于起始位置的偏移量

long int ftell ( FILE * stream );

fwind

让文件指针的位置回到文件的起始位置

void rewind ( FILE * stream );

文本文件和二进制文件

 根据数据的组织形式,数据文件被称为文本文件或二进制文件

二进制形式存储-二进制文件

ASCII码形式存储-文本文件

文件读取结束的判定

feof

应用于当文件结束的时候,判定是读取失败结束,还是遇到文件尾结束

文件缓冲区

文件是指存储在外部存储介质上的、由文件名标识的一组相关信息的集合。由于CPU 与 I/O 设备间速度不匹配。为了缓和 CPU 与 I/O 设备之间速度不匹配矛盾。文件缓冲区是用以暂时存放读写期间的文件数据而在内存区预留的一定空间。使用文件缓冲区可减少读取硬盘的次数。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值