使用getchar() 来读取Console输入字符,如何结束输入?

uplyh 2012-02-14 11:20:17
以下的一段代码在console里计算输入的行数, 如何输入才能使程序结束呢? 我在 win7 console里输入,却总在while循环里出不去,请大家帮忙看看,帮忙找个技术输入的方法,谢谢阿!

#include <stdio.h>
#include <stdlib.h>

int main()
{

char c;
int lineCount=0;
printf("Please begin to input:\n");
while((c=getchar())!=EOF)
{
if(c=='\n')
{
++lineCount;
}
if(c=='\r')
break;

}
printf("\nThe total lines are : %d",lineCount);


return 0;
}
...全文
263 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
uplyh 2012-02-15
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 ivers0n 的回复:]

CTRL+c
[/Quote]

呵呵 这位童鞋纯属导弹
uplyh 2012-02-15
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 cxsjabcabc 的回复:]

1楼2楼都是解决方法;

如果是mac系统,2楼的用ctrl + D
[/Quote]

呵呵 谢谢你的提醒啦,我那段代码是在win7 Console下运行的 :)
程序员小迷 2012-02-15
  • 打赏
  • 举报
回复
1楼2楼都是解决方法;

如果是mac系统,2楼的用ctrl + D
IVERS0N 2012-02-15
  • 打赏
  • 举报
回复
CTRL+c
uplyh 2012-02-15
  • 打赏
  • 举报
回复
谢谢啦!哈哈 就是这个结果! 我之前试Ctrl+D都没效果

[Quote=引用 2 楼 neolyao 的回复:]

ctrl+Z
[/Quote]
uplyh 2012-02-15
  • 打赏
  • 举报
回复
这段代码就是为了获取在console输入的行数, 如果用while ((c = getchar()) != '\n')那只能输入一行就结束了,不是想要的结果哦 :( [Quote=引用 1 楼 czh3642210 的回复:]

C/C++ code
while ((c = getchar()) != '\n') //用回车结束
[/Quote]
如此美丽的你 2012-02-14
  • 打赏
  • 举报
回复
ctrl+Z
面包大师 2012-02-14
  • 打赏
  • 举报
回复
while ((c = getchar()) != '\n') //用回车结束

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧