曾经自己因为 如何清除缓存,消除回车键的影响而烦恼,
后来通过 C语言中文网
学习到了两种通用的方法,经过自己验证,
证实可用可靠,今天记录一下;
分享给同我一样在学习路上的小白;
1、非通用方法,就是不一定在任何编译器下都能通过
fflush(stdin);//dev c++下有效,vs2017下无效 要用rewind(stdin);
2、通用方法,没有意外的话,适合所有编译器,叫这种方法为全自动清除缓存吧
方法一:
#include "stdio.h"
int main()
{
int i,j;
char c;
scanf("%d",&i);
scanf("%*[^'\n']");scanf("%*c",'\n');//清除缓存,这一行都要哦
c=getchar();
scanf("%d",&j);
printf("i = %d , j = %d , c = %c\n",i,j,c);
}
运行结果如下:
去掉清除缓存的代码