bool correct = false;
while (!correct)
{
cout << "Please enter an angle value => ";
cin >> value; //request user to input a value
if(cin.fail())
{
cin.clear();
while(cin.get() != '\n');
correct = false;
}
else
cin.get();
cin.ignore();
correct = true;
}
上記のコードによると、私の問題は次のとおりです。
値を入力した後、プログラムは一時停止し、プログラムの次の部分に進むにはもう一度 Enter キーを押す必要があります。どうすれば回避できますか?
また、「abcd」のように値を入力すると、プログラムがループしてユーザーに再度値を入力するように要求しません。なぜですか? 代わりに、続行して値 0 を出力します。
私はまだこれらの種類のコマンドに慣れていないので、プレイして探索するだけです。ガイドに感謝します!
編集:
while (!correct)
{
cout << "Please enter an angle value => ";
cin >> value; //request user to input a value
if(cin.fail())
{
cin.clear();
while(cin.get() != '\n');
correct = false;
}
else
{
cin.get();
cin.ignore();
correct = true;
}
}