https://blog.csdn.net/lijiayu2015/article/details/52821562
1. Dynamically allocated memory within a function
float* add(float a[3], float b[3])
{
float* sum=new float[3];//替换
sum[0] = a[0] + b[0];
sum[1] = a[1] + b[1];
sum[2] = a[2] + b[2];
return sum;
}
int main()
{
float A[3] = { 1, 1, 1};
float B[3] = { 1, 2,3};
float *M = add(A, B);
cout << M[0] << " " << M[1] << " "<<M[2]<<endl;
cout << M[0] << " " << M[1] << " " << M[2] << endl;
delete[] M;//增加
system("pause");
return 0;
}
2. Define the array outside the function, pass the function through the parameters, and modify the array inside the function
void add(float a[3], float b[3],float sum[3])
{
sum[0] = a[0] + b[0];
sum[1] = a[1] + b[1];
sum[2] = a[2] + b[2];
}
int main()
{
float A[3] = { 1, 1, 1};
float B[3] = { 1, 2,3};
float M[3];
add(A, B, M);
cout << M[0] << " " << M[1] << " "<<M[2]<<endl;
cout << M[0] << " " << M[1] << " " << M[2] << endl;
system("pause");
return 0;
}