c++动态数组,在creat函数创建了一个动态数组后,在display函数中传过去的array1没有值
#include "pch.h"
#include <iostream>
using namespace std;
int creat(int *array1, int *array2)
{
int a, i, b;
int num = 1;
int c = 0;
array1 = new int[num];
cin >> a;
array1[0] = a;
while (1)
{
if (c == 2)
break;
cin >> b;
int array2num = num + 1;
array2 = new int[array2num];
for (i = 0; i < num; i++)
{
array2[i] = array1[i];
}
array2[num] = b;
delete[]array1;
array1 = array2;
num++;
cout << "1继续输入2退出" << endl;
cin >> c;
}
return num;
}
void display(int array1[], int num)
{
for (int i = 0; i < num - 1; i++)
{
cout << array1[i] << endl;
}
}
int main()
{
int *array1 = 0;
int *array2 = 0;
int num;
num = creat(array1, array2);
display(array1, num);
del(array1, num);
delete[] array1;
system("pause");
return 0;
}
如图