美文网首页
缓冲区与scanf printf

缓冲区与scanf printf

作者: kkkk小天使 | 来源:发表于2020-04-02 10:38 被阅读0次

一、知识点解释:

1、printf 向终端输出字符串;scanf 接收终端的输入
2、缓冲区
(1)printf 应用程序将输出的内容先放入缓冲区,一个一个字符依次放,缓冲区再将所有字符显示在终端
(2)scanf 敲回车时,终端的所有内容全部进入缓冲区(\n也在),然后应用程序拿走需要的内容,但是\n还在缓冲区,再用getchar()拿走,当缓冲区没有内容时会等待用户输入

二、代码案例

#include <stdio.h>

/*
printf 向终端输出字符串 
scanf 接收终端的输入 
缓冲区:输入输出流 IO流 cout cin 
*/
int main(){
    char a;
    printf("请输入a:"); 
    scanf("%c", &a);
    
    char b;
    printf("请输入b:");
    getchar();
    scanf("%c", &b);
    
    char c; 
    printf("请输入c:");
    scanf("%c", &c);
    
    printf("a=%c b=%c c=%c\n",a,b,c);
    return 0;
}

三、运行结果

image.png

四、解释:

1、输入a=x之后敲了一个空格
2、输入b之前有一个getchar()拿走了\n因此没有影响
3、输入c之前没有getchar(),因此c拿走了那个\n,不需要等待终端输入,直接在缓冲区拿走\n结束了程序

相关文章

  • 缓冲区与scanf printf

    一、知识点解释: 1、printf 向终端输出字符串;scanf 接收终端的输入2、缓冲区(1)printf 应...

  • 01 C输入输出函数

    1、printf 2、scanf

  • printf/scanf

    printf和scanf函数为重要的文字交互函数,printf用于输出字符串,scanf用于扫描用户输入,是终端界...

  • printf与scanf函数

    printf和scanf的基本使用 函数printf 输出内容 指定位宽如何指定位宽?%mi://m表示位宽,i表...

  • 7.4格式化输入

    输入函数scanf对应输出函数printf,它在相反的方向上(scanf向变量中写入,printf从变量中读取.)...

  • 【C】标准化输入输出

    printf() printf(格式控制字符串); printf(格式控制字符串,输出值参数表); scanf()...

  • C语言格式化输入输出

    本文主要介绍一下C语言中printf和scanf两个函数。 printf函数 printf函数被设...

  • 17-10-27-3

    #include int main() { int a=0; printf("请输入月份:"); scanf("%...

  • C语言学习 day6

    库函数 -IO函数printf scanf getchar putchar-字符...

  • 第8周:指针与字符串——8.1 指针

    1.运算符 & scanf("%d",&i); printf("%x",&i); printf("0x%x",&i...

网友评论

      本文标题:缓冲区与scanf printf

      本文链接:https://www.haomeiwen.com/subject/ezvtphtx.html