C语言标准库提供了许多文件操作的函数,这些函数可以让我们方便地读取、写入和管理文件。本文将介绍C语言标准库中常用的文件操作函数及其用法。
fopen()函数
fopen()函数用于打开文件,并返回一个文件指针。文件指针可以用于后续的文件读写操作。该函数的原型如下:
FILE *fopen(const char *filename, const char *mode);
其中,filename是要打开的文件名,mode是文件打开模式。mode参数有以下几种取值:
"r":以只读方式打开文件。
"w":以写入方式打开文件,如果文件不存在则创建文件,如果文件已存在则清空文件内容。
"a":以追加方式打开文件,如果文件不存在则创建文件。
"r+":以读写方式打开文件。
"w+":以读写方式打开文件,如果文件不存在则创建文件,如果文件已存在则清空文件内容。
"a+":以读写方式打开文件,如果文件不存在则创建文件。
fclose()函数
fclose()函数用于关闭文件。该函数的原型如下:
int fclose(FILE *stream);
其中,stream是要关闭的文件指针。该函数成功关闭文件返回0,否则返回EOF。
fgetc()函数
fgetc()函数用于从文件中读取一个字符。该函数的原型如下:
int fgetc(FILE *stream);
其中,stream是要读取的文件指针。该函数返回读取到的字符的ASCII码,如果到达文件结尾或出错,则返回EOF。
fgets()函数
fgets()函数用于从文件中读取一行数据。该函数的原型如下:
char *fgets(char *s, int size, FILE *stream);
其中,s是存储读取数据的缓冲区,size是缓冲区大小,stream是要读取的文件指针。该函数返回读取到的字符串的地址,如果到达文件结尾或出错,则返回NULL。
fputc()函数
fputc()函数用于向文件中写入一个字符。该函数的原型如下:
int fputc(int c, FILE *stream);
其中,c是要写入的字符的ASCII码,stream是要写入的文件指针。该函数成功写入字符返回写入的字符,否则返回EOF。
fputs()函数
fputs()函数用于向文件中写入一行数据。该函数的原型如下:
int fputs(const char *s, FILE *stream);
其中,s是要写入的字符串,stream是要写入的文件指针。该函数成功写入字符串返回非负整数,否则返回EOF。
fprintf()函数
fprintf()函数用于格式化输出数据到文件中。该函数的原型如下:
int fprintf(FILE *stream, const char *format, ...);
其中,stream是要写入的文件指针,format是格式化字符串,...是可变参数列表。该函数成功写入数据返回写入的字符数,否则返回负数。
fread()函数
fread()函数用于从文件中读取二进制数据。该函数的原型如下:
size_t fread(void *ptr, size_t size, size_t count, FILE *stream);
其中,ptr是存储读取数据的缓冲区,size是每个数据块的字节数,count是要读取的数据块数,stream是要读取的文件指针。该函数成功读取数据返回读取的数据块数,否则返回0。
fwrite()函数
fwrite()函数用于向文件中写入二进制数据。该函数的原型如下:
size_t fwrite(const void *ptr, size_t size, size_t count, FILE *stream);
其中,ptr是要写入的数据缓冲区,size是每个数据块的字节数