int miscellaneous::printWelcomeScreen(){
int ch;
cout<<"Tic Tac Toe"<<endl<<endl;
cout<<"1. Play Game "<<"2. How to Play "<<"3. Credits "<<endl;
cout<<endl<<"Enter Your Choice"<<endl;
cin>>ch;
choiceSelection(ch);
return 0;
}
int miscellaneous::choiceSelection(int ch){
switch(ch){
case 1: break;
case 2: showHelp();break;
case 3: showCredits();break;
default: {
cout<<"Wrong Choice dude!! Use your keyboard Properly next time";
printWelcomeScreen();
break;
}
}
return 0;
}
Когда я подам вход INT, по умолчанию случай работает отлично, Но когда я даю ввод обугленной, по умолчанию случае начинает работать в бесконечном петля.
Почему это происходит? Я даже пробовал разобрать ch перед переходом на коммутатор.
Возможно, вам лучше использовать 'char ch' вместо' int ch' и обновить 'switch', чтобы проверить символы' '1'', '' 2'' и' '3''. –