C 语言中与文件操作相关的常用函数:
-
fopen()
函数:- 用于打开一个文件。
- 语法:
FILE *fopen(const char *filename, const char *mode);
- 返回一个文件指针,如果打开失败则返回 NULL。
- 常用打开模式有:
"r"
(只读)、"w"
(只写)、"a"
(追加)、"r+"
(读写)、"w+"
(读写)、"a+"
(读写追加)。
-
fclose()
函数:- 用于关闭一个打开的文件。
- 语法:
int fclose(FILE *stream);
- 返回 0 表示成功关闭,返回 EOF 表示关闭失败。
-
fputc()
函数:- 用于向文件中写入一个字符。
- 语法:
int fputc(int c, FILE *stream);
- 返回写入的字符,失败时返回 EOF。
-
fputs()
函数:- 用于向文件中写入一个字符串。
- 语法:
int fputs(const char *s, FILE *stream);
- 返回非负值表示成功,失败时返回 EOF。
-
fgetc()
函数:- 用于从文件中读取一个字符。
- 语法:
int fgetc(FILE *stream);
- 返回读取的字符,文件结束时返回 EOF。
-
fgets()
函数:- 用于从文件中读取一行字符串。
- 语法:
char *fgets(char *s, int n, FILE *stream);
- 读取最多 n-1 个字符,遇到换行符或文件结束时停止。返回读取的字符串指针,失败时返回 NULL。
-
fprintf()
函数:- 用于向文件中格式化输出。
- 语法:
int fprintf(FILE *stream, const char *format, ...);
- 返回成功写入的字符数,出错时返回负值。
-
fscanf()
函数:- 用于从文件中格式化输入。
- 语法:
int fscanf(FILE *stream, const char *format, ...);
- 返回成功读取的项数,出错时返回 EOF。
-
fwrite()
函数:- 用于向文件中写入二进制数据块。
- 语法:
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);
- 返回成功写入的元素个数。
-
fread()
函数:- 用于从文件中读取二进制数据块。
- 语法:
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
- 返回成功读取的元素个数。
-
fseek()
函数:- 用于定位文件指针位置。
- 语法:
int fseek(FILE *stream, long int offset, int whence);
whence
参数可以是SEEK_SET
(文件开头)、SEEK_CUR
(当前位置)、SEEK_END
(文件末尾)。
-
ftell()
函数:- 用于获取当前文件指针位置。
- 语法:
long int ftell(FILE *stream);
- 返回当前文件指针位置,出错时返回 -1L。
-
rewind()
函数:- 用于将文件指针重置到文件开头。
- 语法:
void rewind(FILE *stream);
-
sprintf()
函数:- 用于将格式化的输出写入字符串。
- 语法:
int sprintf(char *str, const char *format, ...);
- 返回成功写入的字符数,出错时返回负值。
-
sscanf()
函数:- 用于从字符串中格式化输入。
- 语法:
int sscanf(const char *str, const char *format, ...);
- 返回成功读取的项数,出错时返回 EOF。
-
feof()
函数:- 用于检查文件是否到达末尾。
- 语法:
int feof(FILE *stream);
- 返回非 0 值表示文件结束,返回 0 表示未到达文件结束。
这些函数涵盖了 C 语言中常见的文件操作,包括打开、关闭、读写、定位等功能。掌握这些函数的使用方法和特点,可以帮助你轻松完成各种文件操作任务。