簡體   English   中英

嘗試使用 char 數組顯示具有兩位數的 3x3 表格

[英]Attempting to Display a 3x3 table with double digit numbers using char array

我正在為 class 編寫這個程序,我似乎無法弄清楚如何使我的 Char 數組打印值大於 1-9,否則玩家必須進行數學運算才能計算出他們想要的插槽。 我覺得這破壞了游戲的樂趣。 但是,我對 C++ 較新,我似乎無法讓它工作。 任何幫助表示贊賞,這是數組,這是程序。

class TTTBoard {公共:

void PrintBoard();
char board[9] = { '1','2','3','4','5','6','7','8','9' };
char board2[9] = { "10","11","12","13","14","15","16","17","18"};
char board3[9] =  { "19","20","21","22","23","24","25","26","27" };
int WinXY();
int WhosMove();
void Update();
int gameWin();
void AI();
void UserSelectASlot();
bool gameend();

};

我在源文件中聲明了我的函數,但是每當我嘗試 char * board2[9].......etc 它給我的許多函數一個錯誤,說我不能為 *char 分配一個 int 值?

這是 UserSelectASlot() 中的許多其他代碼中的一段; Function。

else if (Spot == 10 && game.board2[0] != 'O' && game.board2[0] != 'X')
    {
        game.board2[0] = 'X';
    }

我也嘗試過 char string board[9][19] 但是由於錯誤,它也不起作用,超過 100 所以它停止計數。

上面第一個代碼的當前錯誤是“太多初始化程序”非常感謝任何幫助! 謝謝!

第 2 個和第 3 個字符 arrays 實際上是 arrays 字符串 (“) 所以將聲明更改為:

const char* 數組[9]

關於您收到的錯誤,我的猜測是您將 array[i] 傳遞給了一個 function,它需要一個字符,所以用 array[i][0]、array[i][1] 替換它是字符串中的 2 個字符.

順便說一句,您不需要使用字符,而是使用數字、整數,並且在打印 function 中,您只需 map 將 int 值轉換為正確的字符。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM