文件指针的分析
Posted LC编程开发者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件指针的分析相关的知识,希望对你有一定的参考价值。
标准C语言提供了fopen(), fread(), fwrite(), fgets(), fputs(), fclose()等函数,用于操作一个文件。假设有123.txt 文件,我们把文件的内容,读取到内存中,有如下的操作流程:
(1) 调用fopen()打开123.txt文件;
(2) 调用fread()函数,从123.txt文件读取数据;
(3) 调用fclose()函数,关闭打开的123.txt文件;
那么,在这个操作流程中,都围绕着一个对象进行,就是fopen()函数返回的文件指针对象。根据fopen()函数的定义如下:
FILE* fopen(const char *path, const char *mode);
该函数返回一个FILE*类型的指针变量,我们称为:文件指针。
例如,调用fopen()函数打开123.txt文件,如下:
FILE* fp = NULL; //定义文件指针变量;
fp = fopen("123.txt", "r"); //打开文件,获取返回的文件指针;
调用fopen()函数打开123.txt文件成功之后,就返回一个FILE*类型的文件指针,并赋值给文件指针变量fp,那么,文件指针变量fp指向123.txt文件。
然后,调用fread()函数从fp文件指针读取数据,就是从文件指针fp指向的123.txt文件读取数据。
操作完之后,需要调用fclose()函数来关闭文件指针fp。那么,文件指针fp就不再指向123.txt文件。此时,再调用fread()、fwrite()函数来操作,都不会对123.txt文件有任何影响。
所以,这一系列的文件操作函数,都是围绕FILE*类型的文件指针进行。FILE结构体是标准C语言定义的一个类型,我们不用去理解该结构体的定义,只需要知道fopen(), fread(), fclose()等函数的应用,通过这些函数来实现对文件的操作。
韦凯峰 Linux C/C++ 程序设计教程,Linux 系统编程,Openwrt 系统开发,微信:13926572996,QQ:1523520001,博客:www.mylinux.vip
以上是关于文件指针的分析的主要内容,如果未能解决你的问题,请参考以下文章