首先这篇文章是为了整理一下博文《EOF是什么?》的知识点,方便后续查阅。
1. EOF是end of line的缩写,表示文字流的结结尾;
2. EOF不是特殊字符,定义在stdio.h中:#define EOF (-1)‘;
3. 处理文件的集中写法:
while ((c = fgetc(fp)) != EOF) :fgetc()在遇到文件结尾是返回EOF,而在发生错误是也是返回EOF,所以在运用的时候要注意,如在代码中进行错误处理;
while (!feof(fp)) :c语言中feof()在读取了文件最后一个字符后,依然返回0,只有在越过了最后一个字符读取时才回返回非零值,所以得特别注意;
4. EOF用于标准输入的结尾,while ((c = getchar()) != EOF) :标准输入必须在输入时作特定输入来表示EOF,
linux:ctrl -D;
windows:ctrl-Z。