C语言的扑克牌游戏。请解释花色[4][9]和花色[13][6]?
A poker card game in C. Please explain suits[4][9], and faces[13][6]?
所以我有一个示例代码可以为 c 中的迷你扑克游戏创建一副纸牌。但是我不明白西装和面孔是如何确定的。为什么这些数组有二维?我知道 [9]
和 [6]
是数组的列,但我不明白它们的用途。
char suits[4][9]= {"Hearts","Diamonds","Clubs","Spades"};
char faces[13][6]= {"Ace","2","3","4","5","6","7","8","9", "10","Jack",
"Queen","King"};
当你有:
char suits[4][9]
这意味着你的数组有 4
行,每行中的 string
可以有最大长度 9
并减去结尾 '[=15=]'
字符,最大长度 8
.
同样,
char faces[13][6]
表示您的数组有 13
行,每行中的 string
可以有最大长度 6
并减去结尾的 '[=15=]'
字符, 最大长度 5
.
第一组方括号是第一个数组的元素个数,第二组方括号是char
数组(字符串)的最大长度。
char suits[4][9]
中的第二个括号有九个 space 允许 space 用于终止字符串的空字符 [=13=]
。
所以数组实际上是这样的:
char suits[4][9] = {
{'H', 'e', 'a', 'r', 't', 's', '[=10=]'},
{'D', 'i', 'a', 'm', 'o', 'n', 'd', 's', '[=10=]'},
{'C', 'l', 'u', 'b', 's', '[=10=]'},
{'S', 'p', 'a', 'd', 'e', 's', '[=10=]'}
};
所以我有一个示例代码可以为 c 中的迷你扑克游戏创建一副纸牌。但是我不明白西装和面孔是如何确定的。为什么这些数组有二维?我知道 [9]
和 [6]
是数组的列,但我不明白它们的用途。
char suits[4][9]= {"Hearts","Diamonds","Clubs","Spades"};
char faces[13][6]= {"Ace","2","3","4","5","6","7","8","9", "10","Jack",
"Queen","King"};
当你有:
char suits[4][9]
这意味着你的数组有 4
行,每行中的 string
可以有最大长度 9
并减去结尾 '[=15=]'
字符,最大长度 8
.
同样,
char faces[13][6]
表示您的数组有 13
行,每行中的 string
可以有最大长度 6
并减去结尾的 '[=15=]'
字符, 最大长度 5
.
第一组方括号是第一个数组的元素个数,第二组方括号是char
数组(字符串)的最大长度。
char suits[4][9]
中的第二个括号有九个 space 允许 space 用于终止字符串的空字符 [=13=]
。
所以数组实际上是这样的:
char suits[4][9] = {
{'H', 'e', 'a', 'r', 't', 's', '[=10=]'},
{'D', 'i', 'a', 'm', 'o', 'n', 'd', 's', '[=10=]'},
{'C', 'l', 'u', 'b', 's', '[=10=]'},
{'S', 'p', 'a', 'd', 'e', 's', '[=10=]'}
};