码迷,mamicode.com
首页 > 其他好文 > 详细

EOF:getchar()函数返回的一个特殊值

时间:2017-04-22 20:39:20      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:window   函数   不同   linux系统   文件中   结束   print   输入   char   

EOF 是个宏,其意思是:End Of File,文件尾标志。 从数值上来看,就是整数-1
在C语言的头文件中对其进行了宏定义:
libio.h: # define EOF (-1)
当读文件操作时,遇到文件结束位置或读数据出错均会返回 EOF。 (C语言中所有的输入输出操作均是按读文件的思想来设计的,或者说,是文件操作的一种特例,如getchar()就是fgetc(stdin) 的一个宏 )
int getchar() ;
//从标准输入缓冲区读取一个字符,成功返回该字符的ASCII值,出错,返回EOF
那么,如何在键盘输入时,产生EOF呢? 不同的系统方法不同:
linux系统下,在输入回车换行后的空行位置,按 ctrl+d (先按ctrl键,不放,再按d键)
windows系统下,在输入回车换行后的空行位置,按 ctrl+z,再回车确认
以下代码供参考:
#include <stdio.h>
void main()
{
int ch;
while ( ch!=EOF )
{
ch=getchar();
printf("ch=%d\n", ch ); //输出读返回的ch值,读到EOF会输出-1
}
}

EOF:getchar()函数返回的一个特殊值

标签:window   函数   不同   linux系统   文件中   结束   print   输入   char   

原文地址:http://www.cnblogs.com/yangfan-123/p/6748982.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!