打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
C语言中putchar输出“cd”,再输入“hg”不能紧接着“cd”而要另起一行输入,为什么?

https://www.toutiao.com/a6660237590660120835/

我们使用C语言编程时,从键盘输入C语言字符串的时候,最后通过按下回车键把这些字符串送给C程序处理,这里的回车键会产生一个回车符,这是关键。可能题主的问题很多人看不懂,所以我写一个C程序来描述这个问题。

1、C程序来描述题主的问题




上述C程序不难,就是使用C语言的getchar函数从缓冲区中读入一个个的C字符,再通过putchar函数把这些字符再一个个地输出。运行结果如下:



好了,我要问各位一个问题:putchar函数输出“C Program”之后,我继续输入“C++ Program”,为何系统不让我从“C Program”后面继续输入?也就是为何不是这个样子的输入:C Program C++ Program

系统让我另起一行输入了,这是为啥?

2、缓冲区有换行符

我在输入字符串“C Program”后,会按下回车键把这一段C字符串送给C程序处理,此时会产生一个“换行符”,也就是此时的字符串变成“C Program\n”。

那么getchar函数会一个一个地读取这些C字符,然后通过putchar函数一个一个地输出这些字符。当getchar函数读入换行符“\n”时,putchar函数就会输出这个换行符,也就是屏幕的光标已经移到下一行了,所以当你输入字符串“C++ Program”时,就是另起一行输入了。

3、留一个题目

那么现在我把上述C程序再改写下,如下所示:



我在while循环结束之后,在C程序第12行又添加了一条puts语句,如果我的输入还是“C Program”和“ C++ Program”,那么请问此时输出的字符串“C and C++ Program”将会显示在哪个位置?你知道吗?

https://www.toutiao.com/a6660237590660120835/



本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
C语言输入输出函数
getchar()和EOF总结(转载)
浅谈getchar()和putchar()
字符串输入输出函数 fputs fgets
vab的实例精解
各种字符串输入函数解析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服