2017-01-14 34 views
-4

所以我在網上看,看到其他方式來創建一個tic toe表,但我不明白這一點。我試圖用一個數組來創建我的tic tac toe板,但我似乎無法打印它。有人可以告訴我如何打印?如何打印包含tic tac toe遊戲板的陣列?

string tic [6][5] = { {" 1 2 3"}, { "1 | | "}, {" _____"}, {"2 | | " }, {" _____"}, 
      {"3 | | "}}; 
      cout<< tic<< endl ; 
      a++; 

每個人都有自己的做事方式。我只是想知道爲什麼不打印出來。

好吧,這就是我的代碼現在看起來如此,以便我可以輸入X和O但它似乎不打印到一行。

int a = 0; 

    while (a < rounds){ 
     string tic [6][6] = { {" ","1"," ","2"," ","3"}, { "1"," ","|"," ","|"," "}, {" ","_","_","_","_","_"}, {"2"," ","|"," ","|"," " }, {" ","_","_","_","_","_"},{"3"," ","|"," ","|"," "}}; 

     for(int i=0; i < 6; ++i) 
      for(int j=0; j<6; ++j) 
       cout << tic[i][j]; 
     a++; 
+0

你熟悉循環嗎? –

+0

我是?但我需要使用這些字符? – Monrelle

+0

有沒有,但!如果你想打印一個二維數組,你必須使用循環 –

回答

0

你需要做一個循環中的所有陣列在這樣

for(int i=0; i < 6; ++i) 
    for(int j=0; j<5; ++j) 
     cout << tic[i][j]; 
+0

這不是一個學習他如何打印2D數組的地方,如果他不熟悉循環,他從不學習編程,首先嚐試評論,然後嘗試回答 –

+0

Damit,我似乎無法創建一個板。 – Monrelle

+0

我只想打印一個包含這些字符的電路板,我不能用循環來做到這一點? – Monrelle

-1

這裏的關鍵結論是tic實際上是一個指向字符串數組的數組。 當您嘗試直接打印tic時,您將獲得一個內存地址。

要打印字符串數組的元素,您需要經過它並打印每個元素,例如,使用兩個嵌套for循環(因爲你的數組有兩個維度)。

+0

是的,那是我得到的是地址,但我想要董事會打印出來。我不能對這些特定的角色使用循環,因爲這會永遠佔用我的時間。 – Monrelle

+0

我不知道我明白爲什麼「這會永遠需要你」。 'cout << tic [0] [0];'正確而快速地打印第一個字符串'「1 2 3」'對吧?如果是這樣,嵌套for循環將爲每個條目做到這一點,在3行代碼。 – merlinND

+0

哈哈omg * facepalm *,對不起,這是我的愚蠢。你是對的。 – Monrelle