EOF是否隐藏在txt文件中?
Is EOF hidden in txt file?
我制作了一个用 C 语言编写的 .exe 文件 (echo_eof.exe)。
代码如下:
#include <stdio.h>
int main(void)
{
int ch;
while ((ch = getchar()) != EOF)
putchar(ch);
}
然后我在 Windows cmd 中输入 echo_eof < words.txt 其中 words.txt 写为
Hello world!
命令输出为
Hello world!
我从来没有在文本文件中输入过 EOF,但 EOF 似乎隐藏在文本文件中。这是真的?如果是,有没有办法在文本文件中看到隐藏的 EOF?
如果您的读取函数在文件末尾并且无法获取另一个符号(可能是 char),那么它会被告知您已到达 EOF。
这不在文件中,它是来自文件处理程序的信号。
我制作了一个用 C 语言编写的 .exe 文件 (echo_eof.exe)。 代码如下:
#include <stdio.h>
int main(void)
{
int ch;
while ((ch = getchar()) != EOF)
putchar(ch);
}
然后我在 Windows cmd 中输入 echo_eof < words.txt 其中 words.txt 写为
Hello world!
命令输出为
Hello world!
我从来没有在文本文件中输入过 EOF,但 EOF 似乎隐藏在文本文件中。这是真的?如果是,有没有办法在文本文件中看到隐藏的 EOF?
如果您的读取函数在文件末尾并且无法获取另一个符号(可能是 char),那么它会被告知您已到达 EOF。 这不在文件中,它是来自文件处理程序的信号。