使用系统("pause")后如何使用cin?



对于一个问题,我必须使用Ctrl+Z来结束读取数组的参数。

我在这里搜索这个问题并编写这个代码。

我的问题是,在Ctrl+Z之后,我无法对其他一些变量和数组进行cin。

int main ()
{
char a[51];
char b[21];
int n;
for(int i=0;i<51;i++)
a[i]=0;
int ii=0;
while(cin >> a[ii]){
ii++;
}

system("pause");
for(int i=0;;i++)
{
cin >> b[i]; //problem is here, this line isn't working 
if(!isalpha(b[i]))
{
n=stoi(&b[i]);
break;
}
}
return 0;
}

当您获得EOF时,它会被记住,默认情况下甚至不会再尝试读取。在EOF之后执行std::cin.clear();,使其再次尝试读取。

最新更新