c++ - 从函数返回数组

标签 c++ arrays

<分区>

这是我的代码

double hour_payload_add(int entries , double array[])
{
    int index=0 ,k=0;
    int totalpayload=0;
    double returnarray[entries/120];
    while(k< entries)
    {
           totalpayload = totalpayload + array[k];
            if(k%120==0)
                {
                returnarray[index] = totalpayload;
                index++;
                totalpayload=0;
                }

    }

return returnarray;
}

这里我叫它

double hourgraph[hrentries];
 hourgraph= hour_payload_add(entries , graph);

因为我想返回一个数组,我应该怎么做才能在不使用指针的情况下返回?

最佳答案

通过引用将数组 传递给函数并且不返回任何内容。小例子:

void hour_payload_add(int entries , double array[], double (&returnArray)[SIZE])
{
  // returnArray will be updated as it's external to function.
}

void hour_payload_add(int entries , double array[], double *returnArray) // <-- pointer
{
  // returnArray will be updated as it's external to function.
}

用法:

double returnArray[SIZE];
hour_payload_add(entries, array, returnArray);

关于c++ - 从函数返回数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6422993/

相关文章:

c++ - 在 C++ 中使用 std::Vector 进行多线程

java - 从对象数组中的 HashMap 对象创建指针

c - 数组、结构体、函数

在c中创建动态二维Char数组

c++ - 找出构成给定数字所需的最少位数

C++:在继承链中放置构造函数的位置?

c++ - netbeans: 'max' 未在此范围内声明

c++ - 如何将 `duration_cast` 用于派生类?

Javascript 数组按值传递不起作用

c# - 在新对象声明中使用 foreach