关于清除c中的输入缓冲区

时间:2017-10-16 03:02:08

标签: c loops while-loop buffer input-buffer

我有这个代码,一个从用户那里得到一个负数的整数的程序,如果没有将它们陷入循环,直到它们输入一个负整数。我有这个部分,但是,我怎么能清除输入缓冲区?

我尝试使用while((getchar())!='\ n');在第一次scanf_s之后但它失败了。

这是代码

#include <stdio.h>

int main()

{
int num;

printf("Please enter a negative integer");
scanf_s("%d", &num);

while (num >= 0.0)
{
    printf("Please enter a negative integer!\n");
    scanf_s("%d", &num);
}

    printf("%d", num);


system("pause.exe");
return 0;
}

0 个答案:

没有答案