以下各类指针与数组,哪些指针与数组名等价?
如对于
int (*p)[2];
int a[3][2];
p=a;
p+i等价于a+i;
p[i][j]等价于a[i][j];
指针与数组名等价的本质是什么?
int *m;
int (*n)[2];
int *p[2];
int a[10];
int b[3][2];
char c[10];
以下各类指针与数组,哪些指针与数组名等价?
如对于
int (*p)[2];
int a[3][2];
p=a;
p+i等价于a+i;
p[i][j]等价于a[i][j];
指针与数组名等价的本质是什么?
int *m;
int (*n)[2];
int *p[2];
int a[10];
int b[3][2];
char c[10];
都是地址,指针是地址变量,数组名是地址常量,一级指针与一维数组等价,但是二级指针与二维数组不等价,因为二维数组指向数据,二级指针指向指针,不过二维数组可以看作与指针数组等价