如何将多维数组传递给C和C ++中的函数
#include<stdio.h>void print(int *arr[], int s1, int s2) {
int i, j;
for(i = 0; i<s1; i++)
for(j = 0; j<s2; j++)
printf("%d, ", *((arr+i)+j));}int main() {
int a[4][4] = {{0}};
print(a,4,4);}这适用于C,但不适用于C ++。
错误:
cannot convert `int (*)[4]' to `int**' for argument `1' to `void print(int**, int, int)'
为什么它在C ++中不起作用?需要做出哪些改变?
HUX布斯
慕姐4208626
随时随地看视频慕课网APP