很抱歉问了已经回答的问题,我是 C 的新手,不了解解决方案。这是我的功能
int rotateArr(int *arr) {
int D[4][4];
int i = 0, n =0;
for(i; i < M; i ++ ){
for(n; n < N; n++){
D[i][n] = arr[n][M - i + 1];
}
}
return D;
}
它抛出一个错误
main.c|23|错误:下标值既不是数组也不是指针也不是向量|
在线的
D[i][n] = arr[n][M - i + 1];
怎么了?我只是将一个数组元素的值设置为另一个数组元素。
传递的 arr 声明为
int S[4][4] = { { 1, 4, 10, 3 }, { 0, 6, 3, 8 }, { 7, 10 ,8, 5 }, { 9, 5, 11, 2} };