int main()
{
char c;
flag:
printf("请输入:");
scanf("%c", &c);
//fflush(stdin);
if (c != 'a')
{
printf("输入错误!\n");
goto flag;
}
else
printf("Correct\n");
return 0;
}
这里我只想读入一个字符,但是用户可能会输入一串字符,会残留在缓冲区,所以我想在每次读取一个字符后把残留在缓冲区的内容清楚,百度到方法可以调用fflush()函数,但我试了下不知道为什么还是不行。
1.请问我这里该怎么正确调用fflush()清楚缓冲区?
2.有过类似处理经验的,可以讲述一下其他的方法解决这种问题吗?c和c++的都接受
fflush(stdin);放到scanf前面