저는 초보자에서 C++로 사용자 선택을 받아들이고 그것에 따라 행동하는 프로그램을 작성합니다 ... 내 유일한 문제는 사용자가 대문자 선택을 입력 할 때입니다 ... 프로그램이 잘못된 선택으로 처리합니다 ... 'e'가 숫자 입력을위한 선택 인 경우 사용자가 'E'를 입력하면 프로그램은 "숫자 입력"메시지를 표시하지 않습니다. 어떻게 해결할 수 있습니까? 최선을 다했으나 제대로 작동하지 않습니다. 아, 어떻게 스위치 케이스에 대문자를 추가 할 수 있습니까? 이것은 사용자의 선택을 취하고 이에 따라 행동하는 코드의 일부입니다.대문자와 소문자를 허용하려면 어떤 코드를 작성해야합니까?
#include <iostream>
#include <cstring>
using namespace std;
int main(){
char choice ;
for(;;){
do{
cout << endl ;
cout << "(e)nter." << endl ;
cout << "(d)isplay." << endl;
cout << "(u)pdate." << endl ;
cout << "(r)eset. " << endl;
cout << "(q)uit." << endl;
cout << endl;
cout << "Choose one : " ;
cin >> choice ;
if(!strchr("edurq",choice) && (choice>=97&&choice<=122)){
cout << "Enter e,d,u or q " << endl;}
else if(!strchr("EDURQ",choice) && (choice<97&&choice>122)){
cout << "Enter E,D,U or Q " << endl;}
}while(!strchr("edurqEDURQ",choice));
switch (choice) {
case 'e' : enter(); break ;
case 'd' : display(); break ;
case 'u': update() ; break ;
case 'r' : reset() ;break;
case 'q' : return 0;
}
}
}
'하면 strchr ("EDURQ"선택) && (선택 <97&&choice> 122)'해킹 : 모두'<97' and '> 122'은, 그것은'strchr' 전화와 중복되지 않습니다 아무것도 할 수 있습니다! 어쨌든 ? –