高维数组传参
高维数组传参,最多只能省略一级
二维数组:
#include <stdio.h>
int func( int (*a)[200]) {
a[1][1] = 123;
return 0;
}
int main() {
int arr[100][200] = {{0}, {0}};
func( arr);
printf("arr[1][1]: %d\n", arr[1][1]);
return 0;
}
三维数组:
#include <stdio.h>
int func(int (*a)[20][30]) {
a[1][2][2] = 123;
return 0;
}
int main() {
int arr[10][20][30] = {{0}, {0}, {0}};
func(arr);
printf("arr[1][2][2]: %d\n", arr[1][2][2]);
return 0;
}
等价于:
#include <stdio.h>
int func(int a[][20][30]) {
a[1][2][2] = 123;
return 0;
}
int main() {
int arr[10][20][30] = {{0}, {0}, {0}};
func(arr);
printf("arr[1][2][2]: %d\n", arr[1][2][2]);
return 0;
}