初始化数组大小时出现错误

时间:2019-07-08 16:07:24

标签: c++ arrays

我有一个以下函数“ arrayMerger”,我想将两个数组的大小加起来,然后将其大小分配给另一个数组,但是由于“表达式必须具有恒定值”,因此出现了错误。有人可以解释为什么会发生此错误。

#include <iostream>

using namespace std;

void arrayMerger(int *arr1, int *arr2, int size1, int size2)
{
    int size = size1 + size2;
    int arr[size]; //Getting an error here
}

int main()
{
    int arr1[] = { 7,2,9,1 };
    int arr2[] = { 8,1,5,3,4,0 };
    int size1 = sizeof(arr1) / sizeof(int);
    int size2 = sizeof(arr2) / sizeof(int);
    arrayMerger(arr1, arr2, size1, size2);

    return 0;
}

0 个答案:

没有答案