c++怎么输入结束

 我来答
tattackor
推荐于2017-09-27 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:868万
展开全部

1、通过判断输入是否等于EOF,可以结束输入。

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,再回车确认。

2、以下代码供参考:

#include <stdio.h>
void main()
{
    int ch;
    do {
        ch=getchar();
        printf("ch=%d\n", ch ); //输出读返回的ch值,读到EOF会输出-1
    } while ( ch!=EOF );
}
朱古力兜
2014-04-11 · 超过24用户采纳过TA的回答
知道答主
回答量:76
采纳率:100%
帮助的人:53.8万
展开全部
看你的编译器了 我用的code::blocks 输入完毕之后用ctrl+D 结束输入
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友5e8499c
2014-04-11 · TA获得超过556个赞
知道小有建树答主
回答量:280
采纳率:100%
帮助的人:307万
展开全部
在windows环境下文件结尾可用 回车,ctrl+Z,回车 来输入.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dsdwd112
2014-05-26
知道答主
回答量:56
采纳率:0%
帮助的人:15.5万
展开全部
首先,我真的不知道这个程序你想干嘛?你的prech初始值是‘\0';所以更本不可能进入if(prech==’f‘)while(cin>>currch)这是个永真,也就是说不会跳出循环的。我该了一下,由于不知道你想完成啥功能所以不知道网哪儿改,但是至少能跳出去。
#include
using namespace std;
int main()
{
char currch,prech='f';
int ffcnt=0,flcnt=0,ficnt=0;
int xyz=0;
while(xyz==0&&cin>>currch)
{ if (prech=='f')
switch(currch){
case 'f': ++ffcnt;cout<>xyz;break;
case 'l': ++flcnt;cout<>xyz;break;
case 'i': ++ficnt;cout<>xyz;break;}
}
cout<<"number of \"ff\":\t"<<ffcnt<<'\n';
cout<<"number of \"fl\":\t"<<flcnt<<'\n';
cout<<"number of \"fi\":\t"<<ficnt<<endl;
return 0;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式