1

ヒープ上にプリミティブな2Dフロート配列が必要です。NSMutableArrayをラッパーとして使用することもできますが、パフォーマンスのために、プリミティブのみを使用したいと思います。

Objective-C WITHオブジェクトでそれを行う方法:

NSMutableArray *array = [NSMutableArray arrayWithCapacity:DIM1];

for (int i = 0; i < DIM1; i++) {
    array[i] = [NSMutableArray arrayWithCapacity:DIM2];
}

これは私がCで行うことです:

float **array = new float*[DIM1];
for(int i = 0; i < DIM; i++) {
    hotplate[i] = new float[DIM2];
}

これを達成するには、Objective-Cを使用しますか?

4

3 に答える 3

0

あなたの次元は両方とも一定です(そうです)。このようなことができます。

typedef float two_dim_array [DIM1][DIM2];

extern int
main (void)
{

  two_dim_array *array = (two_dim_array *) malloc (sizeof(two_dim_array));
  (*array)[0][0] = 1.0;
  (*array)[2][2] = 4.0;
  printf ("%f, %f", (*array)[0][0], (*array)[2][2]);
}
于 2013-03-22T23:33:17.080 に答える