多维数组和多级指针

来源:互联网 发布:天涯明月刀iu捏脸数据 编辑:程序博客网 时间:2024/06/05 18:25

1.二维数组

   int a[5][5];  

   int **p=a;    //a[i][j]代表为*(*(p+i)+j),  


   int *ptr=a[0];  //一维数组;

  ptr[4][2]  与a[4][2]的区别????

  p[2]等价于*(p+2)


2.参数函数和指针

  C语言规定,当一维数组作为函数参数时,编译器总将其作为指向数组首元素的首地址的指针来处理;

  int fun(char a[3]);

  int main(void)

 {

     int b[10];

     fun(b);       //编译器并不会出错;数组名传值也不能改变原值

 }

3.

0 0
原创粉丝点击