C の多次元配列に関して、「私のコードの何が問題なのか」という質問を何十件も見てきました。何らかの理由で、人々はここで何が起こっているのか理解できないようです。そこで、他の人への参考として、この質問に答えることにしました。
C で多次元配列を正しく設定、アクセス、解放するにはどうすればよいですか?
他の人が役に立つアドバイスを持っている場合は、ぜひ投稿してください。
ベストアンサー1
malloc
C99 以降の C では、動的な多次元配列であっても、次のようにして一度に簡単に割り当て、解放することができますfree
。
double (*A)[n] = malloc(sizeof(double[n][n]));
for (size_t i = 0; i < n; ++i)
for (size_t j = 0; j < n; ++j)
A[i][j] = someinvolvedfunction(i, j);
free(A);