c-制作一个用于更新2-D阵列井字表移动的函数



我有两个函数用于让用户移动和让计算机生成移动,所以当创建一个更新计算机和用户移动的函数时,移动的"x"one_answers"o"以及空格的"_",我会为多维数组使用指针吗?如果是,你将如何编码?一个有解释的例子将不胜感激!

使用函数更新二维char数组,将指针作为参数传递给数组:

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](通过使用指针算术计算其地址来访问数组的元素。希望这会有所帮助。

您打算如何使用指针?指向什么的指针?我认为你根本不需要指点,除非你有一些问题中没有说明的具体想法。我会使用一个简单的二维字符数组。

这样定义你的数组:

char a[3][3] = {  
{"_", "_", "_"},
{"_", "_", "_"},
{"_", "_", "_"}};

你的板可能看起来像这样:4x4多维阵列

例如,要在左上角填充一个"x",请写:

a[0][0] = 'x';

希望能有所帮助!

如果你想传递一个指向函数的指针,你可以这样声明和使用它:

computer_move(char (*p)[3][3])
{
p[1][1] = 'x';
}
char ttt[3][3];
computer_move(&ttt);

最新更新