0

スタックに巨大なマトリックスを割り当てるスタックオーバーフローが発生しています(それに同意します:そこに割り当てるのはばかげています)。下付き文字のインデックスmat [を使用してマトリックスの要素にアクセスしたいので、次のコードを記述しています。 x] [y]

double (*mul1)[N][N];
mul1 = new double[N][N];

エラーが発生しました:

error C2440: '=' : cannot convert from 'double (*)[1000]' to 'double(*)[1000][1000]'

newで2次元配列を割り当てられないのはなぜですか?

4

2 に答える 2

2

あなたはそのようにそれを行うことができます:

int N = 10 ;
double** mul1 = new double*[N];
for(int i = 0; i < N; ++i)
   mul1[i] = new double[N];
于 2013-03-23T11:23:00.027 に答える
1
double *mul1[N];
for (int i=0;i<N;++i)
    mul1[i] = new double[N];

2D配列を1D配列として表す

2次元配列と1次元配列のパフォーマンス

于 2013-03-23T11:22:24.570 に答える