中沒有效果我做了一個很好的井字遊戲。最近我決定添加重置遊戲功能。 這裏就是我需要來自用戶的輸入現在程序在調試中正常工作,但在版本
void playerMove() //Gets the player move and updates the box variables
{
int boxnumber;
while(1) //Set's loop if the player enters a invalid input
{
cout << "\n Player " << player << "'s turn!(Press 0 to reset the game!): ";
cin >> boxnumber;
if(box[boxnumber-1] == 'X' || box[boxnumber-1] == 'O' || boxnumber > 9 || boxnumber < 0) // Checks if the input is valid or not
{
system("CLS");//If invalid, show error and loop back to start to get new input
displayBoard();
cout << "\n Invalid Input! Try again!\n";
}else if(boxnumber == 0)
{
refreshGame();
displayBoard();
}else
{
box[boxnumber-1] = player;//If inputs are fine, set the box variable's and break out of loop!
break;
}
}
}
,在調試模式下的一部分,當我按0,一切都正常運行,遊戲復位,但在發佈版本中,當我按0,它給我是「輸入無效!再試一次!」
我試過的東西沒有工作: - 重建整個版本和調試版本。 - 製作一個新項目並複製粘貼我的代碼。同樣的事情,調試工作,發佈沒有。
對於任何人想知道的,我使用code :: blocks IDE。編譯器是GNU GCC。 感謝您的幫助! :)
我不認爲你可以得到箱[-1] –
什麼是'boxnumber-1'去當你輸入'0'時,是否在'box [boxnumber-1]'中? – NathanOliver