c语言新手提问!!!关于如何输入EOF终止输入!!

#include<stdio.h>main(){longnc;nc=0;while(getchar()!=EOF)++nc;printf("%ld\n",nc);}是c程... #include <stdio.h>
main()
{
long nc;

nc = 0;
while(getchar() != EOF)
++nc;
printf("%ld\n", nc);
}
是c程序设计语言第二版上的例程序,说是用来统计输入字符数。
可以运行,但是输完想输的,却不知道如何看到结果。
EOF,-1 都试过都不能结束输入。该怎么做?
查了知道,ctrl zxcvb 的乱按 出现很多符号,然后会突然结束。。这又是为什么?
求帮助
展开
 我来答
帐号已注销
2020-12-07 · TA获得超过77.1万个赞
知道小有建树答主
回答量:4168
采纳率:93%
帮助的人:165万
展开全部

windows:首先在最后一行结束后(此时未换行)输入ENTER键,新起一行,再输入ctrl+z,再输入时ENTER键即可。 

Linux:直接按CTRL+D快捷键

示例:

#include<iostream>

using namespce std;

void main()

{

int  a;

while(cin >>a)

{

;//循环输入的代码块

}

}

扩展资料:

在C语言中,或更精确地说成C标准函数库中表示文件结束符(end of file)。在while循环中以EOF作为文件结束标志,这种以EOF作为文件结束标志的文件,必须是文本文件。在文本文件中,数据都是以字符的ASCII代码值的形式存放。ASCII代码值的范围是0~127,不可能出现-1,因此可以用EOF作为文件结束标志。

参考资料来源:百度百科-EOF

olive1986717
推荐于2017-11-24 · TA获得超过693个赞
知道小有建树答主
回答量:246
采纳率:0%
帮助的人:371万
展开全部
在windows平台,一般模拟eof的输入是在一个新行的开头输入ctrl + z就行了
在unix环境下,是在一个新行的开始出输入ctrl + D就可以了
你可以试一下
追问
我用的是turbo c  ,您说的好像没用。。。还有别的方法么?但是如果类似的输很多就突然结束了。。这是怎么回事?
追答
在输入完ctrl + z之后按回车就行了啊,在dos系统下也是这样的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f12254c
2011-07-16 · TA获得超过104个赞
知道答主
回答量:102
采纳率:0%
帮助的人:55.5万
展开全部
EOF = end of file 是文件结束的标志,键盘输入可参考一楼的回答。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
蓝山的蓝
2018-10-07
知道答主
回答量:6
采纳率:0%
帮助的人:3067
展开全部
Unix/Linux 包含了 readline.h 的库,在 bash 里直接体现为众多的快捷键操作。
为什么 Ctrl-D 代表了 EOF, 请 man readline
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式