用C语言缓冲是什么意思?
临时存储区称为缓冲区。所有输入输出(I / O)设备都包含I / O缓冲区。
当我们尝试传递超过所需数量的值作为输入时,其余值将自动保存在输入缓冲区中。如果存在,此缓冲区数据将自动转到下一个输入功能。
我们必须先清除缓冲区,然后再接受下一个输入。
示例
以下是缓冲区的C程序-
#include<stdio.h>输出结果void main(){
int a,b;
printf("\n Enter a value: ");
scanf("%d",&a);
printf("\n Enter b value: ");
scanf("%d",&b);
printf("\n a+b=%d ",a+b);
getch();
}
执行以上程序后,将产生以下结果-
Enter a value: 1Enter b value: 2
a+b=3
再次运行该程序。这次,我们尝试在a中而不是b中输入值。
Enter a value: 1 2 3Enter b value: a+b=3
即使我们没有输入b值,它也会采用先前存储的值,该值已经存在于缓冲区中。
在实现中,当我们需要删除标准输入缓冲区数据时,则执行flushall()或fflush()功能。
flushall()−这是stdio.h中存在的预定义函数。通过使用flushall,我们可以从I / O缓冲区中删除数据。
fflush() −这是“ stdio.h”头文件中的预定义函数,用于清除输入或输出缓冲存储器。
fflush(stdin)−用于清除输入缓冲存储器。建议在编写scanf语句之前使用。
fflush(stdout)−用于清除输出缓冲存储器。建议在printf语句之前使用。
以上是 用C语言缓冲是什么意思? 的全部内容, 来源链接: utcz.com/z/333658.html