标签:
1、在C中被定义为-1,源码为:
#define EOF (-1)
2、不同函数中有不同处理
(1)fgetc:在文件中是没有EOF这个字符的,所以是判断文件长度,在fp读到最后一个char后,再读一个char,就会返回EOF。
问题:如何判断文件长度?在文件系统中有相关记录
(2)在标准输入中,不可预知输入长度,如何处理EOF?
以scanf为例:
当scanf遇到如下字符时,将截取输入:换行(^J,10)、回车(^M,13)、EOF(^D,4)(暂时确认这些)。
*注意scanf遇到NULL(^@,0)时,不会截断输入!!
补充:当EOF(^D,4)在字符串中间位置时,scanf不会截断
标签:
原文地址:http://www.cnblogs.com/ywledoc/p/4173707.html