0
首先,我想對我的壞名字進行辯護。現在的問題。我試圖在C++中比較兩個字符串。我曾嘗試使用string.compare和==,但他們都沒有工作。這裏是代碼C++ string.compare不接受空格字符
if(game_type == "AI vs AI"){
std::cout<<"You choosed AI vs AI\n";
aiVsAI(range);
}
else{
std::cerr <<"Error";
}
與string.compare
if(game_type.compare("AI vs AI") == 0){
std::cout<<"You choosed AI vs AI\n";
aiVsAI(range);
}
else{
std::cerr <<"Error";
}
如果我給AIvsAI輸入該程序正常工作,但如果我進入AI(空間)VS(空間)的AI,該程序打印「錯誤」。我嘗試過使用\ x20空間,但這並沒有奏效。任何想法爲什麼發生這種情況?
打印字符串。我敢打賭你會看到'AI'。 – chris
你如何獲得'game_type'?我敢打賭你正在做'std :: cin >> game_type',它只能得到第一個單詞。 –
@Greg,我不這麼認爲,因爲那麼「AIvsAI」也不行。但我確實很好奇'game_type'的價值。 – rashmatash