C语言数组指针,真正等同于二维数组
#include<stdio.h>
int main()
{
int arr[3][4]={{11,22,33,44},{12,13,15,16},{22,66,77,88}};//arr++的跨度与p++的跨度不同
int i;
int j;
int *p;
//p=&arr[0][0];
//p=arr;//面向于行的指针,p++跳的是一个整形变量
//可以定义一个指针,指针偏移的时候,同时偏移对应大小的数组
//数组指针,定义一个指针,指向一个数组!
int (*p2)[4];//包含4个元素的数组,数组指针才是真正等同于二维数组
p2=arr;
printf ("p2:%p\n",p2);
//printf ("p2++:%p\n",++p2);
for(i=0;i<3;i++){
for(j=0;j<4;j++){
printf ("add:%d\n",*(arr[i]+j));
printf ("add:%d\n",*(*(p2+i)+j));
}
}
return 0;
}