返回
了解 fputc() 和 fgetc() 函数:文件读写的基本构建块
后端
2023-12-01 10:52:32
文件读写是编程中至关重要的操作。C 语言提供了诸如 fputc()
和 fgetc()
等函数,这些函数允许程序员以字符为单位与文件进行交互。让我们深入研究这些函数,了解它们的工作原理以及如何在程序中使用它们。
fputc() 函数:向文件中写入字符
fputc()
函数将一个字符写入指定的流。流是一个抽象概念,它代表文件、网络连接或任何其他可以读写数据的来源或目的地。要使用 fputc()
函数,您需要提供三个参数:
stream
:指向流的指针。在文件操作中,通常使用FILE*
类型来表示流。character
:要写入流的字符。fp
:流指向的文件的结构体。
fputc()
函数返回写入字符的整数表示。如果写入成功,则返回字符本身。如果写入失败,则返回 EOF
(文件结束)。
#include <stdio.h>
int main() {
FILE *fp = fopen("myfile.txt", "w");
if (fp == NULL) {
perror("Error opening file");
return EXIT_FAILURE;
}
char character = 'A';
int result = fputc(character, fp);
if (result == EOF) {
perror("Error writing to file");
fclose(fp);
return EXIT_FAILURE;
}
fclose(fp);
return EXIT_SUCCESS;
}
fgetc() 函数:从文件中读取字符
fgetc()
函数从指定的流中读取一个字符。它使用与 fputc()
函数相同的三参数:
stream
:指向流的指针。character
:指向存储读取字符的变量。fp
:流指向的文件的结构体。
fgetc()
函数返回读取的字符。如果读取成功,则返回字符本身。如果读取失败,则返回 EOF
。
#include <stdio.h>
int main() {
FILE *fp = fopen("myfile.txt", "r");
if (fp == NULL) {
perror("Error opening file");
return EXIT_FAILURE;
}
char character;
while ((character = fgetc(fp)) != EOF) {
printf("%c", character);
}
fclose(fp);
return EXIT_SUCCESS;
}
结论
fputc()
和 fgetc()
函数是 C 语言中进行文件读写的基本构建块。它们允许程序员以字符为单位与文件进行交互。理解这些函数的工作原理至关重要,这将使您能够编写健壮且高效的文件处理程序。