1

C のループの繰り返しに基づいて、複数の配列を作成したいと考えています。

例えば:

int i, size;

for ( i =0; i< 10; i++)
{
  size = i * 100
  create_array(i,size); // This loop iterates 9 times creating 9 different arrays
}

void create_array(int name, int size)
{
  double *array_name = (double*) malloc (size*sizeof(double));
  // perform operations on array_name

}

したがって、array_0、array_1、....array_9 という 9 つの配列になります。これは C または Fortran (C++ ではない) で実現できますか?

4

3 に答える 3

1

配列の配列?

double *arrays[10];

for (int i = 0; i < 10; i++)
    arrays[i] = malloc(some_size * sizeof(double));

これで、便利な名前の「配列」の配列ができましarrays[0]arrays[9]


配列の量も動的にしたい場合は、ダブルポインターを使用します。

double **arrays;

arrays = malloc(number_of_arrays * sizeof(double *));

/* Allocate each sub-array as before */
于 2013-06-19T15:11:01.027 に答える