假设我正在创建一个多维数组,如下所示。
const int array_temp[3][2][1] = {
[0] = {{0}, {1}},
[1] = {{2}, {3}},
[2] = {{4}, {5}},
};
该数组代表 3 个表,每个表中有 2 个条目。
如何返回指向 3 个表之一的开头的指针?会是这样吗?
return (void *)&array_temp[idx][0][0];
最佳答案
在 3D 情况下,取消引用指针名称一次会将我们引导到第零行。这意味着将 idx 添加到取消引用的名称将引导我们到达 idx 的第行(其中 idx>=0)
return ((*array_temp)+idx);
但请确保不要在函数内声明数组。因为它的持续时间是直到函数结束
关于c - 返回指向多维数组的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45088666/