C语言文件操作函数说明
- 格式:docx
- 大小:37.63 KB
- 文档页数:6
C语言文件操作函数13.1C语言文件1,两种文件存取方式(输入,输出方式)顺序存取直接存取2,数据的两种存放形式文本文件二进制文件13.2文件指针定义文件类型指针变量的一般形式:FILE *指针变量名;例如:FILE *fp1,*fp2;13.3打开文件在使用文件之前,需打开文件.在C里使用fopen函数打开文件.格式为:fopen(文件名,文件使用方式);此函数返回一个指向FILE类型的指针.如:FILE *fp;fp=fopen("file_1","r");如果调用成功,fp就指向file_1,否则返回为NULL,所以为了保证文件的正确使用,要进行测试.采用如下语句:If((fp=fopen("file_1","r"))==NULL){printf("Cannot open this file\n");exit(0);}最常用的文件使用方式及其含义如下:1,"r".为读而打开文本文件.(不存在则出错) 2,"rb".为读而打开二进制文件.3,"w".为写而打开文本文件.(若不存在则新建,反之,则从文件起始位置写,原内容将被覆盖) 4,"wb".为写而打开二进制文件.5,"a".为在文件后面添加数据而打开文本文件.(若不存在,则新建;反之,在原文件后追加)6,"ab".为在文件后面添加数据而打开一个二进制文件.最常用的文件使用方式及其含义如下:7,"r+".为读和写而打开文本文件.(读时,从头开始;在写数据时,新数据只覆盖所占的空间,其后不变) 8,"rb+".为读和写而打开二进制文件.只是在随后的读写时,可以由位置函数设置读和写的起始位置. 9,"w+".首先建立一个新文件,进行写操作,随后可以从头开始读.(若文件存在,原内容将全部消失) 10,"wb+".功能与"w+"同.只是在随后的读写时,可以由位置函数设置读和写的起始位置.最常用的文件使用方式及其含义如下:11,"a+".功能与"a"相同;只是在文件尾部添加新的数据后,可以从头开始读.12,"ab+".功能与"a+"相同;只是在文件尾部添加新数据之后,可以由位置函数设置开始读的起始位置. 13.4关闭文件当文件的读写操作完成之后,使用fclose函数关闭文件.格式如下:fclose(文件指针)如:fclose(fp);13.5调用fgetc和fputc函数进行输入和输出1,调用fputc函数输出一个字符功能是:将字符ch写到文件指针fp所指的文件中去.当输出成功,putc函数返回所输出的字符;否则,返回一个EOF值.EOF是在stdio.h库函数文件中定义的符号常量,其值等于-1.13.5调用fgetc和fputc函数进行输入和输出例如:把从键盘输入的文本按原样输出到名为file_1.dat文件中,用字符@作为键盘输入结束标志. #includeVoid main(){FILE *fpout;char ch;if(fpout=fpopen("file_1","w")==NULL){printf("Cannot open this file!\n");exit(0);}ch=getchar();while(ch!='@'){ fputc(ch,fpout); ch=getchar(); }fclose(fpout);}2.调用fgetc函数输入一个字符功能是:从pf指定的文件中读如一个字符,并把它作为函数值返回.例如:把一个已存在磁盘上的file_1.dat文本文件中的内容,原样输出到终端屏幕上.#includevoid main(){FILE *fpin;char ch;if((fpin=fopen("file_1.dat","r"))==NULL){ printf("Cann't open this file!\n");exit(0);} ch=fgetc(fpin);while (ch!=EOF){ putchar(ch); ch=fgetc(fpin);}fclose(fpin);}13.6判断文件结束函数feofEOF可以作为文本文件的结束标志,但不能作为二进制文件的结束符.feof函数既可以判断二进制文件,又可以判断文本文件.例:编写程序,用于把一个文本文件(源)复制到另一个文件(目的)中,源文件名和目的文件名由命令行输入.命令形式如下:可执行程序名源文件名目的文件名#includevoid filecopy(FILE* ,FILE *);void main(int argc,char *argv[]){FILE *fpin,*fpout;if(argc==3){ fpin=fopen(argv[1],"r");fpout=fopen(argv[2],"w");filecopy(fpin,fpout);fclose(fpin);fclose(fpout);}else if(argc>3)printf("The file names too many!!\n";elseprintf("There are no file names for input or output!!\n );}void filecopy(FILE *fpin,FILE *fpout){char ch;ch=getc(fpin);while(!feof(fpin)){putc(ch,fpout); ch=getc(fpin);}}13.7fscanf函数和fprintf函数1,fscanf函数fscanf只能从文本文件中按格式输入,和scanf函数相似,只不过输入的对象是磁盘上文本文件中的数据.调用形式为:fscanf(文件指针,格式控制字符串,输入项表)例如:fscanf(fp,"%d%d",&a,&b);fscanf(stdin,"%d%d",&a,&b);等价于scanf("%d%d",&a,&b);3.fprintf函数fprintf函数按格式将内存中的数据转换成对应的字符,并以ASCII代码形式输出到文本文件中.Fprintf 函数和printf函数相似,只是将输出的内容按格式存放到磁盘的文本文件中.调用形式如下:fprintf(文件指针,格式控制字符串,输出项表)如:fprintf(fp,"%d %d",x,y);以下语句 fprintf(stdout,"%d %d",x,y)13.8fgets函数和fputs函数1,fgets函数fgets函数用来从文件中读入字符串.调用形式如下: fgets(str,n,fp);函数功能是:从fp所指文件中读入n-1个字符放入str 为起始地址的空间内;如果在未读满n-1个字符时,则遇到换行符或一个EOF结束本次读操作,并已str作为函数值返回. 13.8fgets函数和fputs函数2,fputs函数fput函数把字符串输出到文件中.函数调用形式如下: fputs(str,fp);注意:为了便于读入,在输出字符串时,应当人为的加诸如"\n"这样的字符串.#include <stdio.h>#include <iostream>int main(int argc, char *argv[]){char arr[10] ;char *ap = "hello!" ;FILE *fp ;if ((fp = fopen("hello.txt", "wt+")) == NULL) {printf("error!") ;exit(1) ;}fputs(ap, fp) ;rewind(fp) ; //fgets(arr, 10, fp) ;printf("%s\n", arr) ;fclose(fp) ;return 0 ;}13.9fread函数和fwrite函数例如有如下结构体:struct st{char num[8];float mk[5];}pers[30];以下循环将把这30个元素中的数据输出到fp所指文件中.for(i=0;i<30;i++)fwrite(&pers[i],sizeof(struct st),1,fp);13.9fread函数和fwrite函数以下语句从fp所指的文件中再次将每个学生数据逐个读入到pers数组中.i=0;fread(&pers[i],sizeof(struct st),1,fp);while(!feof(fp)){ i++;fread(&pers[i],sizeof(struct st),1,fp);}13.10文件定位函数1,fseek函数fseek函数用来移动文件位置指针到指定的位置上,接着的读或写操作将从此位置开始.函数的调用形式如下:fseek(pf,offset,origin)pf:文件指针offset:以字节为单位的位移量,为长整形.origin:是起始点,用来指定位移量是以哪个位置为基准的.1,fseek函数位移量的表示方法标识符数字代表的起始点SEEK_SET 0 文件开始SEEK_END 2 文件末尾SEEK_CUR 1 文件当前位置假设pf已指向一个二进制文件,则;fseek(pf,30L,SEEK_SET)fseek(pf,-10L*sizeof(int),SEEK_END)对于文本文件,位移量必须是0;如:fseek(pf,0L,SEEK_SET)fseek(pf,0L,SEEK_END)2. ftell函数ftell函数用以获得文件当前位置指针的位置,函数给出当前位置指针相对于文件开头的字节数.如;long t;t=ftell(pf);当函数调用出错时,函数返回-1L.我们可以通过以下方式来测试一个文件的长度: fseek(fp,0L,SEEK_END);t=ftell(fp);3.rewind函数调用形式为:rewind(pf);函数没有返回值.函数的功能是使文件的位置指针回到文件的开头.13.10文件应用在磁盘上的test.txt文件中放有10个不小于2的正整数,用函数调用方式编写程序.要求实现:1,在被调函数prime中,判断和统计10个整数中的素数以及个数.2,在主函数中将全部素数追加到磁盘文件test.txt的尾部,同时输出到屏幕上.#include#includeInt prime(int a[],int n){int I,j,k=0,flag=0;for(i=0;i { for(j=2;j if(a[i]%j==0){ flag=0; break;}else flag=1;if(flag){a[k]=a[i];k++;}}return k; }void main(){int n,I,a[10];FILE *fp;fp=fopen("test1-2.txt","r+");for(n=0;n<10;n++)fscanf(fp,"%d",&a[n]);n=prime(a,n);fseek(fp,o,2);for(i=0;i {printf("%3d",a[i]);fprintf(fp,"%3d",a[i]);}fclose(fp);}文件操作函数全clearerr(清除文件流的错误旗标)相关函数feof表头文件#include<stdio.h>定义函数void clearerr(FILE * stream);函数说明clearerr()清除参数stream指定的文件流所使用的错误旗标。
c语言中文本文件操作的主要函数在C语言中,文本文件操作是我们必须了解的一个重要方面。
我们经常需要读取或写入文本文件来存储或读取数据,因此掌握文本文件操作函数非常重要。
下面是C语言中常用的文本文件操作函数:1. fopen()fopen()函数用于打开一个文件并返回一个指向该文件的文件指针。
它需要两个参数:文件名和打开模式。
打开模式可以是读、写或追加等模式。
例如,打开文件进行读取操作的模式为“r”,写入操作的模式为“w”,追加操作的模式为“a”。
2. fclose()fclose()函数用于关闭打开的文件。
它需要一个参数:指向文件的文件指针。
关闭文件时必须使用fclose()函数,否则会导致内存泄漏和数据损坏。
3. fgetc()和fgets()fgetc()函数用于从打开的文件中读取一个字符,fgets()函数用于从打开的文件中读取一行文本。
它们的参数都是文件指针和一个字符数组,确定要读取的最大字符数。
例如,fgets(fp, 100, file)将从文件指针fp指向的文件中读取最多100个字符。
4. fputc()和fputs()fputc()函数用于向文件中写入一个字符,fputs()函数用于向文件中写入一行文本。
它们的参数都是一个字符或一个字符串,和文件指针,它们将字符或字符串写入文件中。
5. fprintf()和fscanf()fprintf()函数用于将数据格式化后写入文件中,fscanf()函数用于从文件中读取已格式化的数据。
格式化字符串由控制字符和占位符组成,告诉函数要格式化的数据类型和如何输出。
例如,fprintf(fp, "%d", num)将整数num以字符形式写入fp指向的文件。
6. fseek()fseek()函数用于将文件指针定位到文件中任何指定的位置。
它需要三个参数:文件指针,距离文件开始位置的偏移量和定位方式(开始、当前或结尾)。
例如,fseek(file, 5, SEEK_SET)将把文件指针设置到文件的第6个位置。
c语言操作函数C语言操作函数包括字符串函数、数学函数、文件操作函数、内存操作函数等。
其中,常见的字符串函数有strcpy、strcat、strlen、strcmp等;数学函数有sin、cos、sqrt、pow等;文件操作函数有fopen、fclose、fread、fwrite等;内存操作函数有malloc、calloc、realloc、free等。
2. 字符串函数的使用方法是什么?字符串函数可以对字符串进行操作,常见的字符串函数有strcpy、strcat、strlen、strcmp等。
其中,strcpy可以将一个字符串复制到另外一个字符串中,使用方法为strcpy(dest, src);strcat可以将一个字符串添加到另外一个字符串的末尾,使用方法为strcat(dest, src);strlen可以获取一个字符串的长度,使用方法为strlen(str);strcmp可以比较两个字符串是否相等,使用方法为strcmp(str1, str2)。
3. 数学函数的使用方法是什么?数学函数可以进行数学运算,常见的数学函数有sin、cos、sqrt、pow等。
其中,sin可以计算正弦值,使用方法为sin(x);cos可以计算余弦值,使用方法为cos(x);sqrt可以计算平方根,使用方法为sqrt(x);pow可以计算x的y次方,使用方法为pow(x, y)。
4. 文件操作函数的使用方法是什么?文件操作函数可以进行文件读写操作,常见的文件操作函数有fopen、fclose、fread、fwrite等。
其中,fopen可以打开一个文件,使用方法为fopen(filename, mode);fclose可以关闭一个文件,使用方法为fclose(fp);fread可以从文件中读取数据,使用方法为fread(ptr, size, count, fp);fwrite可以将数据写入到文件中,使用方法为fwrite(ptr, size, count, fp)。
C语言文件操作函数大全clearerr(清除文件流的错误旗标)相关函数 feof表头文件 #include<stdio.h>定义函数 void clearerr(FILE * stream);函数说明 clearerr()清除参数stream指定的文件流所使用的错误旗标。
返回值fclose(关闭文件)相关函数 close,fflush,fopen,setbuf表头文件 #include<stdio.h>定义函数 int fclose(FILE * stream);函数说明 fclose()用来关闭先前fopen()打开的文件。
此动作会让缓冲区内的数据写入文件中,并释放系统所提供的文件资源。
返回值若关文件动作成功则返回0,有错误发生时则返回EOF并把错误代码存到errno。
错误代码 EBADF表示参数stream非已打开的文件。
范例请参考fopen()。
fdopen(将文件描述词转为文件指针)相关函数 fopen,open,fclose表头文件 #include<stdio.h>定义函数 FILE * fdopen(int fildes,const char * mode);函数说明 fdopen()会将参数fildes 的文件描述词,转换为对应的文件指针后返回。
参数mode 字符串则代表着文件指针的流形态,此形态必须和原先文件描述词读写模式相同。
关于mode 字符串格式请参考fopen()。
返回值转换成功时返回指向该流的文件指针。
失败则返回NULL,并把错误代码存在errno中。
范例#include<stdio.h>main(){FILE * fp =fdopen(0,”w+”);fprintf(fp,”%s\n”,”hello!”);fclose(fp);}执行 hello!feof(检查文件流是否读到了文件尾)相关函数 fopen,fgetc,fgets,fread表头文件 #include<stdio.h>定义函数 int feof(FILE * stream);函数说明 feof()用来侦测是否读取到了文件尾,尾数stream为fopen()所返回之文件指针。
c语言文件操作函数C语言文件操作函数C语言文件操作函数是C语言提供的一种文件操作方式,可以通过这些函数来读取、写入和修改文件。
文件操作函数可以帮助我们完成很多与文件有关的任务,比如读取配置文件、保存用户数据等。
在本文中,将介绍C语言中常用的文件操作函数。
打开文件在C语言中,我们可以使用fopen()函数来打开一个文件。
该函数的原型如下:FILE *fopen(const char *filename, const char *mode);其中,filename表示要打开的文件名,mode表示打开文件的模式。
mode的取值如下:- "r":以只读方式打开文件- "w":以写方式打开文件,如果文件不存在,则创建该文件;如果文件已存在,则清空该文件- "a":以写方式打开文件,如果文件不存在,则创建该文件;如果文件已存在,则在文件末尾追加数据- "r+":以读写方式打开文件,文件必须存在- "w+":以读写方式打开文件,如果文件不存在,则创建该文件;如果文件已存在,则清空该文件- "a+":以读写方式打开文件,如果文件不存在,则创建该文件;如果文件已存在,则在文件末尾追加数据例如,我们可以使用以下代码来打开一个名为example.txt的文件:FILE *fp;fp = fopen("example.txt", "w+");if (fp == NULL) {printf("Open file failed!\n");}在打开文件之后,我们可以使用fclose()函数来关闭文件,释放文件资源。
例如:fclose(fp);读取文件在C语言中,我们可以使用fscanf()函数从文件中读取数据。
该函数的原型如下:int fscanf(FILE *stream, const char *format, ...);其中,stream表示要读取数据的文件,format表示数据的格式。
C语言中常见功能函数在C语言中,有很多常见的功能函数,它们是为了方便程序员在开发过程中进行一些常见操作而设计的。
下面是其中一些常见的功能函数:1.字符串操作函数:- strlen:用于获取字符串的长度。
- strcpy:用于复制字符串。
- strcat:用于拼接两个字符串。
- strcmp:用于比较两个字符串。
- strchr:用于在字符串中查找指定字符。
- strstr:用于在字符串中查找指定子字符串。
2.内存操作函数:- malloc:用于动态分配内存。
- free:用于释放动态分配的内存。
- memcpy:用于内存拷贝。
- memset:用于内存初始化。
3.文件操作函数:- fopen:用于打开文件。
- fclose:用于关闭文件。
- fgets:用于从文件中读取一行数据。
- fputs:用于向文件中写入一行数据。
- feof:用于判断是否到达文件末尾。
4.数学函数:- abs:用于计算绝对值。
- sin、cos、tan:用于计算三角函数值。
- sqrt:用于计算平方根。
- pow:用于计算幂运算。
5.随机数函数:- srand:用于设置随机数种子。
- rand:用于生成随机数。
6.时间函数:7.输入输出函数:- printf:用于向标准输出设备打印输出。
- scanf:用于从标准输入设备读取输入。
8.排序和查找函数:- qsort:用于对数组进行快速排序。
- bsearch:用于在有序数组中进行二分查找。
9.环境变量函数:- getenv:用于获取环境变量的值。
- setenv:用于设置环境变量的值。
10.字符处理函数:- isdigit:用于判断字符是否是数字。
- isalpha:用于判断字符是否是字母。
- isspace:用于判断字符是否是空白字符。
以上只是C语言中常见的一些功能函数,实际上C语言库中还有很多其他功能函数,可以根据需求选择合适的函数来完成相应的操作。
无论是字符串操作、内存操作、文件操作、数学运算,还是随机数生成、时间处理、输入输出以及排序和查找等,C语言提供了丰富的函数库来支持这些常见的功能需求。
c语言 fwrite参数fwrite函数是C语言中的一个文件操作函数,用于将数据写入文件。
其函数原型为:```csize_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream);```参数说明如下:- ptr:指向要写入文件的数据的指针。
- size:每个数据项的字节数。
- count:要写入的数据项的个数。
- stream:指定要写入的文件流。
fwrite函数的作用是将ptr指向的数据写入stream指定的文件流中。
它会将数据按照指定的大小和个数进行写入,并返回成功写入的数据项个数。
在使用fwrite函数时,需要注意以下几点:1. 确保文件流已经以写入模式打开。
如果文件流以只读模式打开或者未成功打开,fwrite函数会返回一个错误。
2. 确保ptr指向的内存区域足够容纳要写入的数据。
否则,可能会发生内存溢出的情况。
3. 在写入数据之前,需要确保文件指针指向正确的位置。
可以使用fseek函数来定位文件指针。
4. fwrite函数返回成功写入的数据项个数,如果返回值小于count,说明写入过程中可能发生了错误。
下面是一个使用fwrite函数的示例代码:```c#include <stdio.h>int main() {int data[5] = {1, 2, 3, 4, 5};FILE *file = fopen("data.txt", "wb");if (file == NULL) {printf("无法打开文件\n");return 1;}size_t result = fwrite(data, sizeof(int), 5, file);if (result != 5) {printf("写入文件失败\n");return 1;}fclose(file);return 0;}```以上代码将一个包含5个整数的数组写入名为data.txt的文件中。
C语言文件操作函数大全(超详细)1.文件指针的声明和初始化在C语言中,通过文件指针来对文件进行操作。
文件指针是指向文件的指针变量,通过它可以对文件进行读写操作。
文件指针的声明一般为`FILE*`类型,通过调用`fopen`函数来初始化文件指针。
```cFILE *fp;fp = fopen("filename", "mode");```其中,"filename"表示文件名,"mode"表示文件的打开模式,常用的模式有:-"r":只读模式,如果文件不存在则打开失败。
-"w":写入模式,如果文件不存,则创建新文件。
如果文件存在,则覆盖原有内容。
-"a":追加模式,文件不存在则创建新文件。
文件存在时,写入的内容追加在文件末尾。
2.文件的打开和关闭通过调用`fopen`函数可以打开文件,返回一个指向该文件的指针。
通过调用`fclose`函数可以关闭文件,释放文件指针资源。
```cFILE *fp;fp = fopen("filename", "mode");//操作文件fclose(fp);```3.文件的读取通过调用`fscanf`或`fgets`函数可以从文件中读取内容。
```cint fscanf(FILE* restrict stream, const char* restrict format, ...);//从文件中读取指定格式的数据,返回成功读取的数据个数。
char* fgets(char* restrict str, int size, FILE* restrict stream);//从文件中读取一行内容,返回一个字符串。
```4.文件的写入通过调用`fprintf`或`fputs`函数可以向文件中写入内容。
c语言 open函数一、open函数介绍open函数是C语言中最常用的文件操作函数之一,它用于向操作系统申请打开文件,同时可以指定文件的打开方式(读、写、读写等)。
若文件已经存在,就申请使用已经存在的文件;若文件不存在,则根据指定的方式和类型(文本文件/二进制文件)创建新文件。
函数open的声明如下:int open( const char *pathname,int flags [, mode_t mode ] );其中,参数pathname指明了要打开的文件路径及文件名;参数flags指定了文件操作的方式;参数mode可以指定要创建的文件的权限。
1、参数pathname参数pathname用于指定要打开的文件名和路径,其形式为“路径/文件名”,比如/usr/include/unistd.h,用于打开/usr/include目录下的unistd.h文件。
2、参数flags参数flags指定了文件的打开方式,即文件可以用来进行哪些操作,如以只读、写方式打开文件等,其可以使用的值有以下几种:(1)O_RDONLY :以只读的方式打开文件。
(4)O_APPEND :在原有的文件内容后面追加内容。
(5)O_TRUNC :打开文件时,如果文件已经存在,将原有文件内容清空,即将文件截断至长度为零字节。
(6)O_CREAT :如果要打开的文件不存在,则创建新文件。
(8)O_NOCTTY :不将文件设置为控制终端。
上述各项可以组合使用,比如可以使用以下形式:O_RDWR | O_TRUNC | O_CREAT此时,文件的操作方式为读写,如果文件已经存在,则将原有文件内容清空,如果文件不存在,则创建新文件。
open函数执行成功,将返回文件描述符;如果open函数执行失败,则将返回-1,同时可以使用全局变量errno来获得具体的错误信息。
四、示例以下示例使用open函数以读方式打开文件count.txt,如果文件不存在,将创建新文件。
c语言读文件的函数C语言的文件读写操作是编程中基本的文件操作之一。
文件读写通常包括打开文件,读取文件和关闭文件等步骤。
本文将详细介绍C语言中的文件读写函数。
1. 打开文件在C语言中,打开文件需要使用fopen()函数。
fopen()函数的格式如下:FILE *fopen(const char *filename, const char *mode);第一个参数是文件路径的字符串,第二个参数指定打开文件的模式。
常用的模式有以下几种:模式 | 含义------------|--------"r" | 读模式, 如果文件不存在, fopen()函数返回NULL"w" | 写模式,如果文件不存在,则新建文件;如果文件已存在,则清空文件内容"a" | 追加模式,如果文件不存在,则新建文件;否则在文件末尾追加写入"rb" | 二进制读模式"wb" | 二进制写模式"ab" | 二进制追加模式fopen()函数返回一个指向FILE类型的指针,这个指针用来表示文件句柄,以便在接下来的读写操作中使用。
下面是打开文件的一个例子:FILE *fp = fopen("filename.txt", "r");if (fp == NULL) {printf("Error opening file\n");return -1;}2. 读取文件在打开文件之后,需要从文件中读取数据。
常用的文件读取函数有以下三种。
2.1 fgetc()fgetc()函数是一个基本的文件读取函数,每次从文件中读取一个字符。
下面是fgetc()函数的格式:int fgetc(FILE *stream);stream是文件指针,指向一个已经打开的文件。
fgetc()函数返回读取的字符,如果到了文件末尾则返回EOF(-1)。
C语言文件操作函数说明
1. fopen(:
该函数用于打开一个文件,并返回一个指向该文件的文件指针。
其原型为:
```c
FILE *fopen(const char *filename, const char *mode);
```
参数`filename`表示要打开的文件名,`mode`表示打开文件的模式,可以是以下几种:
-"r":只读模式,打开一个已经存在的文本文件。
-"w":写入模式,创建一个新的文件,如果文件已存在则将其截断为空文件。
-"a":追加模式,打开一个已经存在的文件,在文件末尾进行写入操作。
- "rb"、"wb"、"ab":类似于上述三种模式,但是用于二进制文件。
-"r+":读写模式,打开一个已经存在的文件,可以进行读写操作。
-"w+":读写模式,创建一个新的文件,如果文件已存在则将其截断为空文件。
-"a+":读写模式,打开一个已经存在的文件,在文件末尾进行读写操作。
- "rb+"、"wb+"、"ab+":类似于上述三种模式,但是用于二进制文件。
2. fclose(:
该函数用于关闭一个打开的文件。
其原型为:
```c
int fclose(FILE *stream);
```
参数`stream`为指向要关闭的文件的指针,函数返回值为0表示成功关闭文件,返回EOF表示关闭文件失败。
3. fgetc(:
该函数用于从文件中读取一个字符,并返回该字符。
其原型为:
```c
int fgetc(FILE *stream);
```
参数`stream`为指向要读取的文件的指针,函数将读取当前位置的字符,并将文件指针指向下一个字符位置。
4. fputc(:
该函数用于向文件中写入一个字符。
其原型为:
```c
int fputc(int character, FILE *stream);
```
参数`character`为要写入的字符,`stream`为指向要写入的文件的
指针,函数将写入字符到当前位置,并将文件指针指向下一个位置。
5. fgets(:
该函数用于从文件中读取一行字符,并将其保存在指定的字符数组中。
其原型为:
```c
char *fgets(char *str, int num, FILE *stream);
```
参数`str`为指向存储字符的数组的指针,`num`为最多读取的字符数量,`stream`为指向读取的文件的指针,函数从文件中读取一行字符,包
括换行符,读取完毕后,返回指向`str`的指针。
6. fputs(:
该函数用于向文件中写入一个字符串。
其原型为:
```c
int fputs(const char *str, FILE *stream);
```
参数`str`为要写入的字符串,`stream`为指向要写入的文件的指针,函数将写入字符串到文件中,直到遇到空字符'\0'为止。
7. fscanf(:
该函数用于从文件中格式化读取数据。
其原型为:
```c
int fscanf(FILE *stream, const char *format, ...);
```
参数`stream`为指向要读取的文件的指针,`format`为读取数据的格式字符串,类似于`scanf(`函数中的格式字符串。
8. fprintf(:
该函数用于向文件中格式化写入数据。
其原型为:
```c
int fprintf(FILE *stream, const char *format, ...);
```
参数`stream`为指向要写入的文件的指针,`format`为写入数据的格式字符串,类似于`printf(`函数中的格式字符串。
9. fseek(:
该函数用于在文件中设置文件指针的位置。
其原型为:
```c
int fseek(FILE *stream, long offset, int whence);
```
参数`stream`为要操作的文件的指针,`offset`为偏移量,`whence`为偏移的起始位置,可以是以下几种:
-SEEK_SET:从文件起始位置开始偏移。
-SEEK_CUR:从文件当前位置开始偏移。
-SEEK_END:从文件末尾位置开始偏移。
10. ftell(:
该函数用于获取文件指针的当前位置。
其原型为:
```c
long ftell(FILE *stream);
```
参数`stream`为要获取当前位置的文件的指针,函数返回值为当前文件指针相对于文件起始位置的偏移量。
11. rewind(:
该函数用于将文件指针重置到文件起始位置。
```c
void rewind(FILE *stream);
```
参数`stream`为要重置文件指针的文件的指针。
12. feof(:
该函数用于检查文件指针是否已经到达文件末尾。
其原型为:
```c
int feof(FILE *stream);
```
参数`stream`为要检查的文件的指针,函数返回值为非零表示文件指针已到达文件末尾。
以上是C语言中常用的文件操作函数的说明,通过这些函数,可以实现对文件的读写、定位等操作。
在使用文件操作函数的时候,需要注意文件指针的正确使用和异常处理,以确保程序能够正确地读写文件。
另外,在打开文件之后,需要在不使用时将文件关闭,以释放系统资源。