我有以下代碼可以正常工作。不過之後我添加一個else語句什麼結果總是爲別人C++字符串操作 - 如果STU
wgetstr(inputWin, ch); //get line and store in ch variable
str = ch; //make input from char* to string
if(str=="m" || str=="M"){
showFeedback("Data Memory Updated");
}
if(str=="p" || str=="P"){
showFeedback("Program Memory Updated");
}
if(str=="g" || str=="G"){
showFeedback("Accumulator, Program Counter, Zero Result Updated");
}
if(str=="e" || str=="E"){
showFeedback("Editing Mode Enabled");
}
if(str=="c" || str=="C"){
showFeedback("Program Copied Into Program Memory");
}
if(str=="r" || str=="R"){
showFeedback("Executing Program");
}
if(str=="x" || str=="X"){
showFeedback("Program Exited");
}
前面所有的評估的基礎上正確輸入的是什麼。即如果我輸入「m」,它會調用showeFeedback(「更新數據內存」),但如果添加下面的else語句,無論輸入什麼內容,我都會收到「Invalid Command Entered」。
else{
showFeedback("Invalid Command Entered");
}
這與您的問題無關,但您可以考慮將您的str轉換爲上(或下)情況,以便在條件中不包含所有這些||。 – 2009-11-19 19:54:18