C语言文件操作:字符写入与读取示例代码解析

需积分: 16 0 下载量 43 浏览量 更新于2024-10-21 收藏 1KB ZIP 举报
资源摘要信息:"在C语言中,文件操作是程序与外部存储设备进行交互的重要手段。本文将介绍如何使用C语言中的文件操作函数向文件写入字符以及如何读取文件内容,并涉及字符操作函数的使用。具体来说,涉及到的函数有:fopen、fclose、fputc、getchar和putchar。 首先,fopen函数用于打开文件,它有两个参数:文件名和文件使用方式。文件使用方式可以是"r"(只读)、"w"(只写,会覆盖原文件)、"a"(追加写入)等。成功打开文件后,fopen会返回一个指向FILE类型的指针,用于后续的文件操作。如果文件打开失败,返回NULL指针。 接下来是fclose函数,它的作用是关闭一个打开的文件。这个函数接受一个文件指针作为参数,关闭与该指针关联的文件,并释放系统资源。使用fclose来关闭文件是一个好习惯,尤其是在文件操作完成后,或者在发生错误时,它有助于防止数据丢失和资源泄露。 fputc函数用于将一个字符写入到文件中,它需要两个参数:一个字符和一个文件指针。fputc函数会将字符写入指针所指向的文件中,如果写入成功,返回写入的字符;如果写入失败,返回EOF(End Of File的缩写,通常用-1表示)。 在字符操作方面,getchar函数用于从标准输入(通常是键盘)读取一个字符。它是无参函数,每次调用都会等待用户输入一个字符,并在输入后返回该字符。putchar函数则用于输出一个字符到标准输出(通常是屏幕),它接受一个字符作为参数,然后将其打印出来。 下面是一个简单的例子,演示如何使用上述函数: ```c #include <stdio.h> int main() { FILE *fp; // 声明文件指针 char ch; // 声明字符变量 fp = fopen("example.txt", "w"); // 打开文件用于写入 if (fp == NULL) { printf("文件打开失败!\n"); return -1; // 如果文件打开失败,则退出程序 } // 使用循环输入字符,并将字符写入文件 printf("请输入字符(输入'q'结束):\n"); while ((ch = getchar()) != 'q') { fputc(ch, fp); // 将输入的字符写入文件 } fclose(fp); // 关闭文件 fp = fopen("example.txt", "r"); // 重新打开文件用于读取 if (fp == NULL) { printf("文件打开失败!\n"); return -1; // 如果文件打开失败,则退出程序 } // 读取文件内容并输出 while ((ch = fgetc(fp)) != EOF) { putchar(ch); } fclose(fp); // 再次关闭文件 return 0; } ``` 在上述代码中,首先声明了一个FILE类型的指针fp用于操作文件,以及一个字符变量ch用于存储输入或读取的字符。然后通过fopen函数以写入模式("w")打开一个名为"example.txt"的文件。使用getchar函数读取用户输入的字符,直到用户输入'q'为止。每读取一个字符,就使用fputc函数将其写入文件。完成写入后,通过fclose函数关闭文件。重新以读取模式("r")打开文件,然后使用fgetc函数读取文件中的每个字符,并通过putchar函数输出到屏幕上。最后,再次关闭文件。 通过这个简单的示例,可以清楚地看到C语言中文件读写和字符处理的基本方法。在实际应用中,这些基本函数能够组合成更复杂的文件操作和数据处理程序。"