int get_int(void)
{
int input;
char ch;
while (scanf("%d", &input) != 1)
{
while ((ch=getchar()) != '\n')
putchar(ch);
printf("is not an interger.\nPlease enter an");
printf("interger value,such as 25,-178 or3:");
}
return input;
}

输入里面的a为什么在scanf获取值进入while判断,满足进入循环的条件后,还在缓冲区中,可以继续被getchar()获取 ?按说不是应该被取过的值就不在缓冲区了吗?