首頁  >  文章  >  後端開發  >  如何在 C 中將二維數組轉換為指標到指標?

如何在 C 中將二維數組轉換為指標到指標?

Patricia Arquette
Patricia Arquette原創
2024-11-25 12:28:14530瀏覽

How to Convert a 2D Array to a Pointer-to-Pointer in C?

將二維陣列轉換為指標到指標:解決相容性差異

將二維陣列轉換為指標到指標結構需要注意它們記憶體佈局的根本差異。二維數組以矩形網格組織元素,而指針到指針以分層樹狀方式排列它們。

要解決這種差異,直接轉換是不可行的。相反,需要一個中間步驟來建立兩個結構之間的相容性。此中介涉及建立指向 2D 數組每一行的指標數組。

考慮以下範例:

Activity solution[a][b];
Activity *mother = solution;

將此2D 陣列轉換為指標到指標結構體中,我們引進了一個指標陣列:

Activity *solution_rows[a] = { solution[0], solution[1] /* and so on */ };
Activity **mother = solution_rows;

現在,我們可以存取兩種格式的元素, mother[i] 指向二維數組的第i 行,mother[i][j]解析為 Solution[i][j]。

以上是如何在 C 中將二維數組轉換為指標到指標?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn