将二维数组转换为指针到指针:解决兼容性差异
将二维数组转换为指针到指针结构需要注意它们内存布局的根本差异。二维数组以矩形网格组织元素,而指针到指针以分层树状方式排列它们。
要解决这种差异,直接转换是不可行的。相反,需要一个中间步骤来建立两个结构之间的兼容性。此中介涉及创建指向 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中文网其他相关文章!