我需要实现一个修改数组的函数。新阵列可能是不同的大小。 cout
打印1.我明白这个代码有什么问题,但我无法弄清楚语法是什么。如何将数组设置为新数组?
//tried this..
int reduce(int *array[])
{
*array = new int[1];
(*array)[0] = 6;
return 0;
}
//also tried this..
int reduce(int array[])
{
array = new int [1];
array[0] = 6;
return 0;
}
int main()
{
int a[1] = {1};
int *p = a;
reduce(&p);
cout << a[0];
return 0;
}
你知道本地数组和动态分配数组的区别吗? –
@ Marcusw1您正在函数调用中分配一个新数组。它将删除以前的参考并添加一个新的参考。 – Ayush
是的,但我的功能的重点是采取一个数组,并根据数据进行修改。修改后的新阵列将具有较小的尺寸。 – Marcusw1