admin 管理员组文章数量: 1087139
2024年3月19日发(作者:html是什么版本)
C语言文件的输入与输出
一. 文件指针
每个被使用的文件都在内存中开辟一个区,用来存放文件的有关信息
(如文件的名字、文什状态及文件当前位置等)。这些信息是保存在一个
结构体变量中的。该结构体类型是由系统定义的,取名为FILE。在
sudio.h文件中有以下的文件类型声明:
typedef struct{
short level; /*缓冲区“满”或“空”的程度*/
unsigned flags; /*文件状态标志*/
char fd; /*文件描述符*/
unsigned char hold; /*如无缓冲区不读取字符*/
short bsize; /*缓冲区的大小*/
unsigned char *buffer;/*数据缓冲区的位置*/
unsigned char *curp; /*指针,当前的指向*/
unsigned istemp; /*临时文件,指示器*/
short token; /*用于有效性检查*/
}FILE;
在缓冲文件系统中,每个被使用的文件都要在内存中开辟一FILE类
型的区,存放文件的有关信息。
1
FILE类型的数组:FILE f[5];定义了一个结构体数组f,它有5
个元素,可以用来存放5个文件的信息。
有了文件指针类型,就可以用它来定义文件指针变量,用文件指针
变量来访问文件,其形式为:FILE *指针变量名。例如:FILE *fp;
其中fp是指向要访问文件的指针变量。例如,通过文件指针访问
文件,有如下的访问:
FILE *fp;
fp=fopen(“”, “rb”);
ch=getc(fp);
第一行语句只定义了一个没有指向的文件指针fp,第二行是打开文件
,并同时确定对访问文件的操作方式(此处对访问的文件只进
行读操作),这时给文件结构中的成员信息赋值,并使fp指向
文件,第三行是利用文件指针对文件进行操作,操作方式应当与打开文
件时确定的方式一致(只读)。由此可以看出,操作文件过程中不出现
对文件结构成员的访问语句。
如果有n个文件,一般应设n个指针变量,使它们分别指向n个文
件,确定打开方式,利用有关函数对文件指针操作即可。例如:下面语
句定义了三个文件指针,在程序中就可以处理三个不同的文件。
FILE *fa,*fb,*fc;
2
版权声明:本文标题:c语言文件的输入输出 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1710812416a574363.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论