は、だから私は、構造体を与えられましたか?struct内のポインタへのポインタは何を意味しますか?</p> <pre><code>struct Xxx { struct Yyy{...}; Yyy **yyys; // matrix of yyys }; </code></pre> <p>私は、ポインタへのポインタが行列に関連しているかについて混乱しています:
新しいYyy
と新しいXxx
を初期化するにはどうすればよいですか?
は、だから私は、構造体を与えられましたか?struct内のポインタへのポインタは何を意味しますか?</p> <pre><code>struct Xxx { struct Yyy{...}; Yyy **yyys; // matrix of yyys }; </code></pre> <p>私は、ポインタへのポインタが行列に関連しているかについて混乱しています:
新しいYyy
と新しいXxx
を初期化するにはどうすればよいですか?
第1レベルのポインタはポインタの配列を指し、各第2レベルのポインタはYyy
の配列を指す。
次のように彼らを設定することができます。
struct Yyy **makeMatrix(int rows, int cols)
{
int i;
struct Yyy **result = malloc(rows*sizeof(struct Yyy *));
for (i = 0; i < rows; i++) {
result[i] = malloc(cols*sizeof(struct Yyy));
}
return result;
}
は、2次元配列と考えてください。したがって、最初のポインタで列を作成し、2番目の列を行に使うことができます。 – sreisman