C 陣列與指標

2021-06-22 14:00:12 字數 624 閱讀 1711

1、陣列名字與指標

靜態陣列是一列連續儲存的物件,陣列名字是指向陣列第乙個元素的指標常量,因而具有內部元素指標型別

。比如int p[4], p可以作為int* 型別看。要特別注意的是,多維陣列在記憶體中仍是線性儲存,本質上與一維陣列無異,例如int p[4][5]就可以理解為int p[20],多維陣列名字p指向的仍只是int,而不是指向int[5],p仍然只能被看作int* 型別,而不是int**型別。

2、多維陣列做函式引數

譬如要將int p[4][5][6]傳入乙個函式,那麼這個函式的形參可以為int* q或int s[5][6],函式內陣列元素的訪問方式為:

p[i][j][k]=*(q+i*5*6+j*6+k)=s[i][j][k]

3、多維陣列的動態分配

必須乙個維度乙個維度地分配,高維陣列的元素為指向低維陣列元素的指標(與靜態多維陣列的儲存結構是不同的)。如

int** double=new int* [4];

for(int i=0;i<4;++i)

double是個二維陣列

C 指標陣列與陣列指標

說實話,c語言真的很讓人蛋疼,它不像物件導向的語言,我們重心在設計程式上。而使用c語言,你不僅要考慮程式的設計,你還要考慮很多他的使用細節,不然一不小心你怎麼死的都不知道。但是,個人感覺,c語言的魅力是其他任何語言都比不了的!繼續看。陣列指標 範例 typedef int aint5 5 typed...

C 指標陣列與陣列指標

陣列指標 也稱行指標 陣列指標 a pointer to an array,即指向陣列的指標 定義 int p n 優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p 1時,p要跨過n個整型資料的長度。如要將二維陣列賦給一指標,應這樣...

指標陣列與陣列指標 C

關於陣列指標 1 對於二維陣列,初始化時,必須指定乙個引數 int a 3 int a 這樣是不允許的,因為要確定指標移動一步要走多遠。對於一位陣列int a 這樣可以。也就數說只有乙個引數位置可以不用設定引數。2 int p 3 必須加上小括號,這代表乙個指向陣列的指標,數字3,代表每一列有三個數...