c语言中的getchar如何使用?

 我来答
xiao1060503543
高粉答主

2018-04-01 · 说的都是干货,快来关注
知道小有建树答主
回答量:274
采纳率:82%
帮助的人:12.1万
展开全部

getchar的两点总结:
1.getchar是以行为单位进行存取的。
当用getchar进行输入时,如果输入的第一个字符为有效字符(即输入是文件结束符EOF,Windows下为组合键Ctrl+Z, Unix/Linux下为组合键Ctrl+D,

那么只有当最后一个输入字符为换行符'\n'(也可以是文件结束符EOF,EOF将在后面讨论时, getchar才会停止执行,整个程序将会往下执行。

譬如下面程序段:


while((c = getchar()) != EOF){ putchar(c);}

执行程序,输入:abc,

然后回车。

则程序就会去执行puchar(c),

然后输出abc,

这个地方不要忘了,系统输出的还有一个回车。

然后可以继续输入,再次遇到换行符的时候,程序又会把那一行的输入的字符输出在终端上。


对于getchar,肯定很多初学的朋友会问,getchar不是以字符为单位读取的吗?那么,

既然我输入了第一个字符a,

肯定满足while循环(c = getchar()) != EOF的条件阿,

那么应该执行putchar(c)在终端输出一个字符a。不错,我在用getchar的时候也是一直这么想的,但是程序就偏偏不着样执行,而是必需读到一个换行符或者文件结束符EOF才进行一次输出。

2.getchar()的返回值一般情况下是字符,但也可能是负值,

即返回EOF。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式