关键词搜索

源码搜索 ×
×

键盘缓冲区

发布2022-10-25浏览752次

详情内容

什么是键盘缓冲区?

       简单而言:就是键盘输入的值全部输出,还有更多的数值未输出,而计算机将这些未输出的值放在了一个缓冲区里,等待第二次输入。

       键盘缓冲区一般和scanf有关,当使用scanf时,输入了 字符1+空格+字符2 时,由于scanf遇见空格后停止读取,于是此时多余的空格+字符2会存入计算机的缓冲区里,之后若是再遇见scanf、gets、getchar时,就不能从键盘上输入,而是键盘缓冲区里的值会自动填入。

  1. #include<stdio.h>
  2. int main() {
  3. int a;
  4. char b[10] ;
  5. char d[10];
  6. scanf("%s", b);//输入qwer<空格>123
  7. printf("%s\n", b);//输出qwer
  8. gets(d); //会自动填入<空格>123
  9. printf("%s", d);//输出<空格>123
  10. 或者a=getchar(); //会自动从缓冲区里拿出第一个字符填入
  11. putchar(a); //输出<空格>
  12. }

        有人问,如果第二次输入还是scanf,键盘缓冲区的空格岂不是会使它再一次读取失败。事实上,使用scanf时,若是输入的第一个字符遇见空格会自动跳过它,读取下一个字符。

如输入 :<空格>qwer    则输出:qwer

                                                  ---------------来自一个不知名的菜鸟大二学生

                                                                 请路过的帅哥美女点点赞支持支持我,ヾ(o′▽`o)ノ°°谢谢

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载