我现在需要处理一组很大的数据,在数据的处理过程中需要申请一些临时的内存来存储这些数据,而C语言可以用malloc()函数来申请这些内存空间:
double *temp_r,*temp_a,*temp_i; temp_r=(double *)malloc(Column*sizeof(double)); temp_a=(double *)malloc(Row*Column*sizeof(double)); temp_i=(double *)malloc(Column*sizeof(double));
...........
free(temp_r);
free(temp_i);
return temp_a;
请问在C#里面怎么来动态申请内存空间,用于存储运算过程的中间数据,并在最后释放这些空间呢?
double *temp_r,*temp_a,*temp_i; temp_r=(double *)malloc(Column*sizeof(double)); temp_a=(double *)malloc(Row*Column*sizeof(double)); temp_i=(double *)malloc(Column*sizeof(double));
...........
free(temp_r);
free(temp_i);
return temp_a;
请问在C#里面怎么来动态申请内存空间,用于存储运算过程的中间数据,并在最后释放这些空间呢?
double[] data = new double[100000];
List<double> data = new List<double>(); 后者可以适应动态变化长度的数据。内存本身是CLR管理的,不需要你释放。