c c 筆記 指向陣列的指標與二維陣列

2022-09-19 01:09:11 字數 540 閱讀 8157

指向陣列的指標與二維陣列

定義乙個二維陣列很簡單,如int matrix[3][10]。如果我們想在函式中對這個二維陣列進行修改那麼該如何傳遞引數呢?

有兩種方式:void func(int (*mat)[10]) 或  void func(int mat[10])

(*mat)[10],mat就是乙個指向陣列的指標。

同時(*mat)[10]和mat[10]雖然在函式引數中是等價的,它們實際是不同的,第乙個是乙個變數,而第二個則是乙個常量。

只要有可能,函式的指標形參都應該宣告為const

指標陣列和字串陣列

指標陣列的定義int *api[10];和指向陣列的指標相比只少了括號,但是前者是乙個陣列,裡面的元素都是指標

我們有兩種方法來儲存多個字串,一是通過指標陣列

char const *keyword=;

另一種方法是使用二維陣列 char const keyword[9]=;

第一種相較第二種要省一定空間,但是要使用指標

C C 指向二維陣列的指標

設有整型二維陣列a 3 4 如下 0 1 2 3 4 5 6 7 8 9 10 11 它的定義為 int a 3 4 設陣列a的首位址為1000,各下標變數的首位址及其值如圖所示。c語言允許把乙個二維陣列分解為多個一維陣列來處理。因此陣列a可分解為三個一維陣列,即a 0 a 1 a 2 每乙個一維陣...

二維陣列與指向二維陣列的指標

指標陣列 是陣列元素為指標的陣列,本質為陣列。int p n 陣列指標 是指向陣列首元素的指標,其本質為指標。int p n 的優先順序高於指標運算子 操縱二維陣列 int a i j int pa j pa a a 代表該二維陣列的首位址 pa 代表該二維陣列的首位址 pa 也代表該二維陣列的首位...

C語言二維陣列指標(指向二維陣列的指標)

二維陣列的定義 int matrix 見圖的操作那篇文章裡面的定義 或者這篇文章提供了另外一種方法。二維陣列在概念上是二維的,有行和列,但在記憶體中所有的陣列元素都是連續排列的,它們之間沒有 縫隙 以下面的二維陣列 a 為例 int a 3 4 從概念上理解,a 的分布像乙個矩陣 0 1 2 3 4...