C與C 基礎 陣列指標與指標陣列

2021-09-25 04:26:27 字數 1372 閱讀 7887

c與c++基礎–陣列指標與指標陣列

c與c++基礎–結構體struct和typedef struct 區別

c與c++基礎–函式

c與c++基礎–記憶體管理

陣列指標也成為行指標,

陣列指標,就是乙個指標,指向乙個一維陣列。

定義 int (*p)[n];

()優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p+1時,p要跨過n個整型資料的長度。

**例項:

#include int a[3][4];

int (*p)[4];//定義乙個陣列指標

int main()

輸出結果:
p 100

p 200

畫圖分析:

指標陣列就是乙個陣列,陣列的每個元素就是乙個指標。

定義 int p[n];

優先順序高,先與p結合成為乙個陣列,再由int說明這是乙個整型指標陣列,它有n個指標型別的陣列元素。這裡執行p+1是錯誤的,這樣賦值也是錯誤的:p=a;因為p是個不可知的表示,只存在p[0]、p[1]、p[2]…p[n-1],而且它們分別是指標變數可以用來存放變數位址。但可以這樣 p=a; 這裡p表示指標陣列第乙個元素的值,a的首位址的值。

**例項:

#include int main()

; int *p[3];//定義指標陣列

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

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

printf("---------------我只是乙個分割線--------------\n");

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

return 0;

}

輸出結果:
陣列 -272632404

陣列 -272632400

陣列 -272632396

---------------我只是乙個分割線--------------

陣列 100

陣列 200

陣列 300

畫圖分析:

陣列指標只是乙個指標變數,似乎是c語言裡專門用來指向二維陣列的,它占有記憶體中乙個指標的儲存空間。指標陣列是多個指標變數,以陣列形式存在記憶體當中,占有多個指標的儲存空間。

C語言基礎 指標陣列與陣列指標

一 指標陣列 在這一節中我們來學習乙個陣列,這個陣列比較特殊,也比較普通。說它特殊是因為這個陣列是指標的陣列,也就是說我們有乙個陣列,這個陣列裡存放的變數型別是指標型變數 說它普通是因為陣列變數其實與其它普通變數沒有什麼區別,指標變數就是一種可以存放記憶體位址的變數,所以它們也可以被定義成一串連續的...

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個整型資料的長度。如要將二維陣列賦給一指標,應這樣...