陣列指標也稱為行指標,它是乙個指向陣列的指標。陣列指標只是乙個指標變數,可以用來指向二維陣列,它占用乙個指標的儲存空間。
int (*p)[n];
定義中()優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列。這個一維陣列長度是n,也可以說是p的步長:執行p+1時,p要跨過n個整型資料的長度。
指標陣列是多個指標變數以陣列的形式存在記憶體當中,占用多個指標的記憶體空間。
int *p[n];
定義中[ ]優先順序高,[ ]先與p結合成為乙個陣列,再有int*說明這是乙個整型指標陣列,它有n個指標型別的陣列元素。
一維陣列中*(p+i)
等價於p[i]
,因此:
要表示二維陣列中第i行第j列乙個元素,這幾種方式都可以:
*(p[i]+j)
、*(*(p+i)+j)
、(*(p+i))[j]
、p[i][j]
其中,優先順序:( ) > [ ] > *
陣列指標和指標陣列
陣列指標 也稱行指標 定義 int p n 優先順序高,首先說明p是乙個指標,指向乙個整型的一維陣列,這個一維陣列的長度是n,也可以說是p的步長。也就是說執行p 1時,p要跨過n個整型資料的長度。如要將二維陣列賦給一指標,應這樣賦值 int a 3 4 int p 4 該語句是定義乙個陣列指標,指向...
陣列指標和指標陣列
一 定義 陣列指標 陣列指標 是指向陣列 首元素的位址的 指標,其本質為指標 這個指標存放的是陣列首位址的位址,相當於2級指標,這個指標不可移動 指標陣列 陣列元素為指標的陣列,其本質為陣列。二 舉例 int a 3 4 這個無需多說,就是乙個 二維陣列 int p 4 就相當於int p 4 它就...
陣列指標和指標陣列
這兩個名字不同當然所代表的意思也就不同。我剛開始看到這就嚇到了,主要是中文太博大精深了,整這樣的簡稱太專業了,把人都繞暈了。從英文解釋或中文全稱看就比較容易理解。指標陣列 array of pointers,即用於儲存指標的陣列,也就是陣列元素都是指標 陣列指標 a pointer to an ar...