函数和二维数组
首先回顾关于二维数组的部分内容:
1.[ ]的效果等同于解除引用,ar2[r] [c] = (*(ar2+r)+c)
ar2:指向二维数组ar2第一行所代表数组的指针
ar2+r:指向第r行(最后一行)的所代表数组的指针
*(ar2+r):解除引用,意思是第r行所代表数组(即第r行所代表数组的首地址)
*(ar2+r)+c:第r行数组的最后一个数的地址
*((ar2+r)+c):ar2[r][c]
2.区别*ar2[4]和(*ar2)[4]!
*ar2[4]指一个指向四个指针型变量的数组
(*ar2)[4]指的是一个列数为4的二维数组
将二维数组传递到函数的方法:
1 int sum(int (*ar2)[4] , int size);
1 int sum(int ar2[][4] , int size);
二者完全等价

浙公网安备 33010602011771号