我有两个功能让用户进行移动,而计算机生成移动,因此在创建用于更新计算机和用户移动的功能时,移动的'x'和'o'和'_'如果有空格,我会为多维数组使用指针吗?如果是的话,如何编码?一个带有解释的例子将不胜感激!
答案 0 :(得分:0)
您打算如何使用指针?指针指向什么?我认为您根本不需要指针,除非您有未在问题中说明的特定思想。我将使用一个简单的二维字符数组。
这样定义数组:
char a[3][3] = {
{"_", "_", "_"},
{"_", "_", "_"},
{"_", "_", "_"}};
您的董事会可能像这样:4x4 multidimensional array
例如,要将“ x”填充到左上角,请输入:
a[0][0] = 'x';
希望有帮助!
答案 1 :(得分:0)
如果要传递指向函数的指针,则可以这样声明和使用它:
computer_move(char (*p)[3][3])
{
p[1][1] = 'x';
}
char ttt[3][3];
computer_move(&ttt);
答案 2 :(得分:0)
使用函数更新二维char数组,将 pointer 作为参数传递给该数组:
int main(){
char array[5][5];
updateArray(array, 0, 0, 'a');
}
void updateArray(char * arr, int row, int col, char c){
arr[row][col] = c;
}
请注意,在C语言中声明数组时,数组标识符(在这种情况下为array
)是指向数组第一个元素的指针。方括号([row][col]
通过使用指针算术计算其地址来访问数组的元素。希望这会有所帮助。