函数和二维数组

首先回顾关于二维数组的部分内容:

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);

二者完全等价

 

posted @ 2022-05-16 10:39  卷卷卷卷出一片天  阅读(46)  评论(0)    收藏  举报