我有一个任务要做一个 N by N tic tac toe,你输了就赢了,它有一个倒带机制(返回奇数圈。)我尝试过使用倒带机制来实现倒带机制2 乘 N 平方矩阵,但它不起作用 - 它“从一开始”擦除内容并通知我“核心转储”。这是我修改后的代码(修复了一个不同的问题) - 我希望能得到一些关于如何解决这个问题的提示。
int undo_most_recent(char board[N][N],int n,int log[N * N][2],int* p_of_m,int i)
{
if ( (i % 2 == 0) && (*p_of_m + i <= 0))
{
print_error();
return(Error);
}
while ((*p_of_m > 0) && (i < 0))
{
board[(log[*p_of_m][0])][(log[*p_of_m][1])] = '_';
log[*p_of_m][0] = 0;
log[*p_of_m][1] = 0;
(*p_of_m)--;
i++;
printf(" p_of_m is: %d",*p_of_m);
}
print_board(board,n);
return(Success);
}
这是整个代码的链接 - https://pastebin.com/qGHbWB56