热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

c语言putchar,getchar,c语言用putchar输出字符串

getchar(和putchar(是一对字符输入输出函数.getchar(不带任何参数,他从输入序列中返回下一个字符。而且,getchar(和putchar(不


getchar (和putchar ) )是一对字符输入/输出函数。


getchar ) )没有参数,他从输入序列返回以下字符: 例如,以下语句读取以下字符输入并将该字符的值分配给变量ch :


ch=getchar (; putchar ()函数打印参数。 例如,以下语句将以前分配给ch的值打印为字符:


Putchar(ch; 这两个函数只处理字符,因此通常比scanf (或printf )函数更快更有用。 此外,getchar (和putchar ) )不需要转换说明。


接下来,让我们看看以下示例中它们是如何工作的。 本例为"文字为空格时,直接打印; 否则,打印原始字符的ASCII序列中的下一个字符”


# include stdio.h # definespace ' '/space是空白字符int main () { char ch; ch=getchar (; 读取//1个字符的while (ch!='\n ' )//如果读取的下一个字符不是换行符,即行未结束,{if(ch==space(/空格putchar(ch ) ); ELSEPutchar(ch1; //改变其他文字的ch=getchar (; //获取下一个字符}putchar(ch; //循环结束,读入的最后一个字符为“\n”,打印换行代码return 0; }输入连续字符后,getchar ) )的作用是一次读取一个字符。 当然,如果最后输入Enter,getchar ) )也会最终读取“\ n”。


以下是该程序的输入示例。 第1行的输入,第2、3行的输出)。


从CALL ME HAL.DBMM NF IBM/上的示例输入中可以看到,空格按原样打印,但其他字符是ASCII的下一位,输出中的最后一行为空行(因为在输入时在最后一个键盘上输入了enter,所以会换行)


看看下面的代码。


#include stdio.hint main () { char ch; while((ch=Getchar ) )!='# ' ) {putchar(ch ); }返回0; }运行此程序后,与用户的交互如下。 粗体文本是输入。


Hello, there. My [enter]


Hello,there. My name is# LuAo. [enter]


name is


将getchar ()导入到#中时,可以看到循环已结束,不再导入到下一个中。


键盘输入通常是行缓冲输入。 意味着在发生换行时刷新缓冲区,即打印。 因此,可以看到上述的用户操作效果。


应该注意的是,我们经常混合使用getchar ()和scanf ) )。 如果我们混合使用,如果使用getchar (在调用之前使用scanf ) )在输入行中留下换行符,则会出现一些问题。 我们可以用以下方法处理这个问题。


wile (获取器)!='\n ' ) continue; 消除scanf在输入行中留下的一个或多个换行符是getchar (和putchar )的基本用法


第一次写博客,欢迎大家的指导!


推荐阅读
author-avatar
h53695088
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有