eof在c语言中是什么意思

来源:这里教程网 时间:2026-02-21 16:47:13 作者:

EOF 在 C 语言中的含义

EOF(End of File)是 C 语言中一个预定义的常量,表示文件或流的末尾。它用于检测文件读取或写入操作是否已达到文件的末尾。

用法

在 C 语言中,使用 EOF 常量来检查输入或输出操作的结果是否已达到文件末尾。它通常与文件操作函数结合使用,例如

fscanf
fprintf
fgetc

立即学习“C语言免费学习笔记(深入)”;

例如:

<code class="c">#include <stdio.h>
int main() {
  FILE *fp;
  int c;
  fp = fopen("myfile.txt", "r");
  while ((c = getc(fp)) != EOF) {
    putchar(c);
  }
  fclose(fp);
  return 0;
}</code>

在这个示例中,

getc()
函数从文件流中读取单个字符,并将其存储在
c
变量中。循环会一直持续到
getc()
返回 EOF,表示已达到文件末尾。

注意事项

EOF 的值因实现而异,但通常为 -1。 在使用 EOF 进行比较时,请务必将其与返回的值进行比较,而不是直接与常量本身比较。例如:
<code class="c">if (getc(fp) == EOF) {
  // 已达到文件末尾
}</code>

相反的常量

在文件操作中,EOF 的相反常量是

FEOF
(File Error On End of File),它表示文件读取或写入操作失败。在大多数情况下,当文件读取或写入操作遇到错误(例如,文件无法访问)时,将返回 FEOF。

相关推荐