写c++应用时,某时候不希望用户输入,但是用户输入了,影响了后面的输入,不知道应该怎么处理。
#include <bits/stdc++.h>
#include <windows.h>
using namespace std;
int k;
int main()
{
Sleep(1000);
printf("test:");
Sleep(500);
printf("please input\n");
fflush(stdout);
cin.ignore(10000000, '\n');
cin.clear();
while (1)
{
scanf("%d", &k);
if (k > 100) break;
else printf("NO\n");
}
return 0;
}
举个例子,在这份代码中,用户若在 sleep 的时候输入,就会影响后面的输入。
我用的 Embarcadero Dev-C++ 这个编译器。
百度上的 fflush, cin.ignore, cin.clear 都用了,没用。