从二维数组中获取前一个数组,并将给定数组作为参数传递给函数

时间:2019-03-01 22:50:38

标签: c++ arrays function multidimensional-array arguments

创建标题很困难,但我将向您展示:

我得到了二维数组arr[10][10]

在函数中,将大小为arr的{​​{1}}的一维数组作为参数传递:

5

我想要的是:不知道用作参数的数组的索引(在本例中为索引5),我想从int func(arr[5]); 获取具有给定数组的(index = indexgiven-1)的数组(上一个)。

所以在这种情况下,我想要:

arr

注意::我无法更改此功能的签名。我的工作是在函数内部创建代码。然后将调用此函数。

1 个答案:

答案 0 :(得分:0)

如果您忘记了传递数组的想法,则可以这样做

void func(int (*row)[10])
{
    int (*previous_row)[10] = row - 1;
    int (*next_row)[10] = row + 1;
    ...
}

int main()
{
    int arr[10][10];
    func(arr + 5);
}

但是我想我更喜欢Adrien的想法,只需通过索引即可。