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