這裡談論的是 c語言 的多維陣列的訪問
多維陣列是一維陣列的一種特殊形式,例如a[3][10]
這個陣列,相當於是 a 這個陣列,有三個元素,每個元素又有 10 個成員
有的時候,我們或許會想要按順序訪問陣列中的元素,這時候我們可以宣告乙個指標,指向多維陣列的某個元素,通過移動指標就可以訪問多維陣列中的每乙個元素
int
*p =
&matrix[0]
[0];
p++;
//matrix[0][1]
當陣列作為函式引數,傳址呼叫的時候,需要提供除了第一維以外的其他維的長度
void
func
(int
(*mat)[10
]);void
func
(int mat[
10]);
之所以需要提供其他維的資訊,是因為陣列下標的計算需要
只有在知道了其他維度的資訊,在第一維變化的時候,才能根據其他維度資訊,計算第一維度的位址變化
多維陣列 陣列的陣列 及指針對其訪問
首先,我要說明的,在c語言中,把 多維陣列 叫做 陣列的陣列 更好理解一下。下面我就統一稱之為 陣列的陣列 有的教程中喜歡將陣列的陣列用矩陣表示,不過我更趨向於直線表示,如下圖 定義陣列的陣列int ga 2 3 5 我對陣列的陣列的理解 以ga 2 3 5 為例 即為陣列的陣列,陣列裡面包含陣列,...
多維陣列和多維指標
指向指標的指標 指標變數在記憶體中會占用一定的空間 可以定義指標來儲存指標變數的位址 int pp本質上還是指標,只是兩個 告訴你這是乙個指向指標的指標char p null char p2 p p2 給p賦值沒有問題,但怎麼使用p 呢?這就需要我們前面多次提到的鑰匙 第一步 根據 p 這個變數,取...
多維陣列 和 多維指標
指標變數在記憶體中會占用一定的空間。可以定義指標來儲存指標變數的位址值。舉例 舉例說明,多級指標的使用,重置動態空間大小 include include int reset char p,int size,int new size else return ret int main return 0 ...