こんにちは、ユーザーが数字ではないものを入力した場合、数字を入力する代わりにプログラムをチェックインしたいと思います。
だから私はこの機能をやった
void ValidationController::cinError(int *variable){
if(!isdigit(*variable)){
cin.clear();
cin.ignore(256, '\n');
cout <<*variable<<endl;
*variable=0;
cout <<*variable<<endl;
}
}
私はこのように関数を呼び出します:
int more;
cin >>more;
cinError(&more);
だから私の問題は、私が数字を与えるたびに、私がしなかったように振る舞うということです。それは内側に入り、変数をゼロに等しくします。