C 语言中用于文件读写的函数215



文件是存储计算机程序和数据的一种重要机制。C 语言提供了各种函数,用于从文件中读取数据和向文件中写入数据。

文件读取函数

fopen()


fopen() 函数用于打开一个文件并返回一个 FILE* 指针,用于对文件进行后续操作。语法如下:```c
FILE *fopen(const char *filename, const char *mode);
```

其中,filename 是要打开的文件名,mode 是一个字符串,指定文件的打开模式。

fgetc()


fgetc() 函数从文件指针指向的文件中读取单个字符。如果成功读取,它将返回该字符;如果到达文件末尾,它将返回 EOF(一个特殊的值,表示文件末尾)。语法如下:```c
int fgetc(FILE *stream);
```

fgets()


fgets() 函数从文件指针指向的文件中读取一行的字符,并将其存储在指定的缓冲区中。它将继续读取,直到遇到换行符或到达文件末尾。语法如下:```c
char *fgets(char *str, int n, FILE *stream);
```

fscanf()


fscanf() 函数类似于 scanf(),但用于从文件指针指向的文件中读取数据。它允许使用格式化字符串读取各种数据类型。语法如下:```c
int fscanf(FILE *stream, const char *format, ...);
```

文件写入函数

fwrite()


fwrite() 函数将数据块写入文件指针指向的文件中。它返回写入的字节数;如果发生错误,则返回 0。语法如下:```c
size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream);
```

fprintf()


fprintf() 函数类似于 printf(),但用于将数据写入文件指针指向的文件中。它允许使用格式化字符串写入各种数据类型。语法如下:```c
int fprintf(FILE *stream, const char *format, ...);
```

fputs()


fputs() 函数将一个字符串写入文件指针指向的文件中,它将继续写入,直到遇到空字符 '\0'。语法如下:```c
int fputs(const char *str, FILE *stream);
```

错误处理

在使用文件 I/O 函数时,始终建议检查错误条件。可以通过使用以下函数来完成:

ferror()


ferror() 函数检查文件指针指向的文件中是否发生了错误。

feof()


feof() 函数检查文件指针指向的文件是否到达末尾。

范例

以下是读取和写入文件的一个示例:```c
#include
int main() {
FILE *fp;
// 打开一个文件进行读取
fp = fopen("", "r");
if (fp == NULL) {
perror("Error opening file");
return -1;
}
// 从文件中读取字符
char c;
while ((c = fgetc(fp)) != EOF) {
putchar(c);
}
// 关闭文件
fclose(fp);
// 打开一个文件进行写入
fp = fopen("", "w");
if (fp == NULL) {
perror("Error opening file");
return -1;
}
// 向文件中写入字符串
const char *str = "Hello world!";
fprintf(fp, "%s", str);
// 关闭文件
fclose(fp);
return 0;
}
```

C 语言提供了广泛的文件读写函数,使程序员能够轻松地处理文件。理解这些函数的用法对于开发健壮可靠的文件处理程序至关重要。

2024-11-24


上一篇:如何在 C 语言中每输出 2 个换行符?

下一篇:C 语言中的 c 是输出什么