2015-10-06 96 views
1

我必須用一個數字和一個字母來實現一副牌。這是我迄今所做的:初始化一個數字和一個字符到一個二維數組

string deck [6][6] = 
{ 
    {1A, 1B, 1C, 1D}, 
    {2A, 2B, 2C, 2D}, 
    {3A, 3B, 3C, 3D}, 
    {4A, 4B, 4C, 4D}, 
    { , , , }; 

}; 
int main() 
{ 
    cout << deck[0][0] << endl; 
} 

我得到一個錯誤:

invalid suffix 'A' on integer constant

回答

0

,因爲你需要用你的字符串在雙引號您收到此錯誤。如果你想使用一個靜態初始化/宣言,它應該是這個樣子:

std::string deck[4][4] = { 
    { "1A", "1B", "1C", "1D"}, 
    { "2A", "2B", "2C", "2D"}, 
    { "3A", "3B", "3C", "3D"}, 
    { "4A", "4B", "4C", "4D"} 
}; 

您可以通過使用兩個嵌套for循環顯示甲板的全部內容:

for (int r=0; r < 4; ++r) { 
    for (int c=0; c < 4; ++c) { 
     if (c > 0) { 
      cout << " "; 
     } 
     cout << deck[r][c]; 
    } 
    cout << "\n"; 
} 
+0

好的,謝謝你。要顯示數組中的所有內容,它是否必須是嵌套循環? – Shay

+0

是的,或者您可以像訪問OP一樣訪問單個元素,例如'甲板[0] [0]'。 –

+0

我需要所有的內容來顯示沒有寫甲板[] [] 36次 – Shay

相關問題