【问题标题】:Function takes 2D arrarys, returns 1D array,函数接受二维数组,返回一维数组,
【发布时间】:2018-01-24 10:04:29
【问题描述】:

我正在尝试编写一个函数,该函数采用二维数组,对其进行一些元素数学运算,并作为结果输出一维数组。 我试过了,但它不起作用,我不知道为什么:

功能:

double underlying_actionable(double values[2][20])  
{
    double actionables [20] { };
    for( int i = 0; i <= 19; i++)
    {
        actionables[i] = min(values[i][0], values[i][1]);
    }
    return actionables;
}

呼叫:

double actionables [20];
actionables = underlying_actionable(underliers);

【问题讨论】:

  • 根据声明,该函数返回一个双精度值,而不是一维双精度数组。

标签: arrays function multidimensional-array


【解决方案1】:

underlying_actionable 方法返回的是双精度值而不是双精度数组。

如果您正在使用 C/C++,那么您必须使用指针来执行此操作。 https://www.tutorialspoint.com/cprogramming/c_return_arrays_from_function.htm

在任何其他语言上,只需在函数声明和定义时在函数的数据类型之后使用[]

datatype[] function_name(args)
{
    body
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-26
    • 1970-01-01
    • 1970-01-01
    • 2021-05-31
    • 1970-01-01
    • 2021-03-16
    • 2021-03-29
    相关资源
    最近更新 更多