2014-09-27 76 views
-1

我的教授说,在阅读一串字符时,如果用户没有手动输入文件结尾字符,它会自动插入。该字符放在换行符(代表用户按下“enter”的字符)之前还是之后?'cin'在换行符之前还是之前放置EOF?

+0

EOF不是一个字符。这只是文件或其他数据流的结尾。 – 2014-09-27 17:41:13

+1

@larsmans:鉴于存在http://en.wikipedia.org/wiki/End-of-transmission_character和http://en.wikipedia.org/wiki/Control-Z – NPE 2014-09-27 17:44:35

+1

,该声明*可能会轻微混淆@NPE当然,但这些实际上是混淆的常见来源,并且OP似乎被这种混淆所困扰(IOstream“插入EOF字符”?)。我很高兴我的C书解释说文件实际上不包含EOF字符。 – 2014-09-27 17:50:48

回答

3

文件结束后没有任何内容,所以换行符必须在此之前。

+0

非常感谢,非常感谢。 – dfg 2014-09-27 17:54:10

1

EOF就是这样,文件结束。因此,根据这个定义,换行符会在之前出现。

-1

此外,绝对没有要求,无论如何,EOF前立即有一个换行符。文件中的最后一个字符可以是任何字符,不仅是换行符。

相关问题