0

cin.ignore(100,'\n')ストリーム全体で標準のcinを使用した場合でも機能しますか?

例:

cin >> temp;  //enter key input
if(cin.fail())
{
  cin.clear();
  cin.ignore(100,'\n');
}

または、cin.get()を使用する必要がありますか?

例:

temp=cin.get();
if(cin.fail())
{
  cin.clear();
  cin.ignore(100,'\n');
}

または、これらのコードは同じ結果を生成しますか?

4

1 に答える 1

0

ああ、バカな私、クリアリングを呼び出す関数を作成しました

void clear()
{
  cin.clear();
  cin.ignore(100,'\n');
}

私のプログラムでは、関数clear()を複数回呼び出しました。cinからの入力なしで2回続けて呼び出された場合clear()、空白行に入力を求められました。

これが原因だと思います。

于 2011-03-28T08:26:54.627 に答える