首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C getchar()和putchar()

C getchar()和putchar()
EN

Stack Overflow用户
提问于 2011-07-19 07:46:17
回答 1查看 2.3K关注 0票数 0

通过K&R,我试图理解C。我想写一个程序,在屏幕上打印用户的前一行,除非字符是"a“。

代码语言:javascript
复制
int main(){

int c;

while((c=getchar())!=EOF){

     if(c!='a')
            putchar(c);
}
return 0;
}

是的,程序不是很多。但它不会像预期的那样工作。我是否需要使用字符"a“的ASCII值,因为上面的代码只打印所有字母,而不管是不是a。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-19 07:50:45

代码应该可以按照指定的方式工作,但是您会发现,使用带有while循环的getchar将在输入a时打印一个回车符。这是因为在当前的实现中,getchar将一直读取输入缓冲区,直到它为空,如果你想阻止这种情况发生,你可以在if语句中刷新它。

此时输入文本字符串将打印出删除所有*a*s的字符串

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6740759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档