在C语言中,通常使用FILE *
类型的指针来表示文件流,例如stdin
、stdout
和stderr
- 打开一个文件:
#includeint main() { FILE *file; file = fopen("example.txt", "r"); // 以只读模式打开文件 if (file == NULL) { printf("无法打开文件\n"); return 1; } }
- 使用
fgetc()
函数逐字符读取文件内容:
int c; while ((c = fgetc(file)) != EOF) { putchar(c); }
- 关闭文件:
fclose(file);
这是一个完整的示例程序,它将读取名为example.txt
的文件并将其内容输出到控制台:
#includeint main() { FILE *file; int c; file = fopen("example.txt", "r"); if (file == NULL) { printf("无法打开文件\n"); return 1; } while ((c = fgetc(file)) != EOF) { putchar(c); } fclose(file); return 0; }
请注意,这里的current
指针是隐式的。当你使用fgetc()
时,它会自动更新文件流的位置。如果需要在文件中返回到之前的位置,可以使用fseek()
函数。