请问用getchar接受字符时,EOF是指哪些输入,谢谢!
小弟初学者,请指教。
举个例子:(K&R手册P19 1.5.3)
/*****************************************/
#include <stdio.h>
/* count lines in input */
int main(void)
{
int c, nl;
nl = 0;
while ((c = getchar()) != EOF)
if (c == '\n ')
++nl;
printf( "%d\n ",nl);
getch();
return 0;
}
/*****************************************/
运行这个程序时,我无法停止输入。也就是说没法到(c = getchar()) == EOF 这一步。请问是怎么回事?
谢谢指教!
[解决办法]
ctrl+z或者ctrl+D或文件尾
[解决办法]
ft,鼠一下子2个有困啊
[解决办法]
zhousqy(标准C匪徒)(甩拉,甩拉)
ctrl+z或者ctrl+D或文件尾
-------------------
谢谢你的回答。我用的是键盘输入,没法用ctrl+z或者ctrl+D结束输入。
请问该怎么办?
_____________________________________________________________
_____________________________________________________________
狂晕!!!”用的是键盘输入,没法用ctrl+z或者ctrl+D结束输入“ 这是什么话?是键盘坏了还是????输入的时候同时按住ctrl+z结束!(DOS)
[解决办法]
zhousqy(标准C匪徒)(甩拉,甩拉)
ctrl+z或者ctrl+D或文件尾
-------------------
谢谢你的回答。我用的是键盘输入,没法用ctrl+z或者ctrl+D结束输入。
请问该怎么办?
_____________________________________________________________
_____________________________________________________________
狂晕!!!”用的是键盘输入,没法用ctrl+z或者ctrl+D结束输入“ 这是什么话?是键盘坏了还是????输入的时候同时按住ctrl+z结束!(DOS)
[解决办法]
zhousqy(标准C匪徒)(甩拉,甩拉)
ctrl+z或者ctrl+D或文件尾
-------------------
谢谢你的回答。我用的是键盘输入,没法用ctrl+z或者ctrl+D结束输入。
请问该怎么办?
_____________________________________________________________
_____________________________________________________________
狂晕!!!”用的是键盘输入,没法用ctrl+z或者ctrl+D结束输入“ 这是什么话?是键盘坏了还是????输入的时候同时按住ctrl+z结束!(DOS)
[解决办法]
全对
[解决办法]
ctrl+z后按回车
[解决办法]
ctrl+z
然后回车
回车的目的是清空input buffer缓存区,然键入的马上的就生效
[解决办法]
关机
[解决办法]
UP
[解决办法]
up
[解决办法]
不同环境机器的EOF值不同..可以先打印EOF值出来看一看
#include <stdio.h>
int main(int argc, char *argv[])
{
printf( "%d ",EOF);
system( "pause ");
return 0;
}
[解决办法]
楼上的,这样子恐怕不行吧,我怎么打印出是-1?