EOF隐藏在txt文件中吗?

问题描述 投票:0回答:1

我创建了一个用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?

eof
1个回答
2
投票

如果您的阅读功能位于文件的末尾并且无法获得另一个符号(可能是char),则会告知您已达到EOF。这不在文件中,它是来自文件处理程序的信号。

© www.soinside.com 2019 - 2024. All rights reserved.