C 语言文件输入输出:全面指南60


在 C 语言中,文件输入输出 (I/O) 是一个基本而重要的概念。它允许程序与文本文件和二进制文件进行交互,从而实现诸如文件读取、写入和修改等操作。本指南将全面介绍 C 语言的文件输入输出,包括函数、操作和示例代码。

打开和关闭文件

在进行文件 I/O 操作之前,必须首先使用 fopen() 函数打开文件。此函数接收两个参数:要打开的文件名和访问模式字符串。访问模式字符串指定要执行的操作,例如读取、写入或附加。

fopen() 函数返回一个 FILE* 类型的指针,它表示打开的文件。在完成文件操作后,必须使用 fclose() 函数关闭该指针。

文件读写

要从文件中读取数据,可以使用 fscanf() 函数。此函数接收三个参数:FILE* 指针、格式化字符串和读取数据的变量地址。格式化字符串指定数据的格式(例如 %d 表示整数,%f 表示浮点数)。

要向文件中写入数据,可以使用 fprintf() 函数。此函数接收三个参数:FILE* 指针、格式化字符串和要写入的数据。格式化字符串指定数据的格式,与 fscanf() 函数类似。

文件定位

有时需要在文件中移动文件指针的位置。可以使用以下函数:* fseek():将文件指针移动到指定的位置。
* ftell():获取当前文件指针的位置。
* rewind():将文件指针复位到文件开头。

文本文件和二进制文件

C 语言支持两种类型的文件:文本文件和二进制文件。文本文件包含文本字符,而二进制文件包含二进制数据。

默认情况下,fopen() 函数以文本模式打开文件。但是,可以通过指定 "rb"(二进制读取)或 "wb"(二进制写入)访问模式字符串以二进制模式打开文件。

错误处理

在进行文件 I/O 操作期间,可能会出现错误。例如,文件可能不存在或无法访问。为了处理这些错误,可以使用 ferror() 和 perror() 函数:* ferror():检查 FILE* 指针是否指示错误。
* perror():打印有关错误的描述性消息。

示例代码

以下是一个简单的示例代码,演示如何使用 C 语言进行文件输入输出:```c
#include
int main() {
// 打开文件进行读取
FILE *fp = fopen("", "r");
// 检查文件是否打开成功
if (fp == NULL) {
perror("Error opening file");
return -1;
}
// 从文件中读取数据并打印
char buffer[100];
while (fscanf(fp, "%s", buffer) != EOF) {
printf("%s", buffer);
}
// 关闭文件
fclose(fp);
return 0;
}
```

C 语言提供了广泛的函数和操作来进行文件输入输出。通过理解这些概念并编写健壮的文件 I/O 代码,程序员可以创建交互式和可扩展的应用程序。

2024-10-13


上一篇:C 语言中灵活高效的求和函数

下一篇:用 C 语言逆序输出数字