1. 程式人生 > >關於二維陣列與指標

關於二維陣列與指標

1) 陣列
二維陣列可以看作一維陣列,每一行代表一個一維陣列。比如:int a[4][5],可以把a
看成是一個四行的列陣列。此時a代表第0行首地址,a+i即代表第i行首地址;也可以記作&a[i];
而a[i]有代表一維陣列,所以a[i]也可以表示第i行首地址,相應的a[i]+j則表示第i行第j列的元素地址.
2)指向二維陣列的指標
(1)較容易理解的方法:
定義一個指標,指向每一個元素
int a[2][2];
int*p;
p=&a[0][0];
(2)較難
定義一個指標,讓其指向二維陣列的每一行
int a[2][3];
int (*p) [3] //每一行有三個元素
p=a;
//p代表第0行的首地址,p=&a[0];p+i代表第i行首地址;p即為a[0];而

p+i表示第0行第i個元素地址,
*(*p+i)=a[0][i] ;
*( *(p+i)+j)=a[i][j];

歡迎可愛的你!