嵌入式-C语言基础:数组指针
定义一个数组指针,指向二维数组:
int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};
int (*p)[4];//定义二维指针数组
p=a;//指向二维数组,数组指针等同于二维数组名
#include<stdio.h> int main() { int a[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}}; int (*p)[4];//定义二维指针数组 p=a;//指向二维数组 for(int i=0;i<3;i++) { for(int j=0;j<4;j++) { printf("%d\t",*(*(p+i)+j)); } printf("\n"); } return 0; }
说明:*(p+i)+j表示的是a[i][j]的地址,在它的前面加一个*号就是对a[i][j]取值
打印结果:
1 2 3 4
5 6 7 8
9 10 11 12
4556