他の構造体内の構造体の配列に動的にメモリを割り当てる方法がわかりません。で、ここで私の問題です...私は主を含むproject.cファイルを持って、私は、数のように多項式を掛ける項を追加するようなすべてのポリ操作を処理する別のpolynomial.cファイルがあります..構造体内の配列の動的メモリ割り当て
これは私が動的ポリ配列にメモリを割り当て、私のproject.cファイル内でこれを持ってpolynomials.h
typedef struct term{
int coeff;
int expo;
} TERM;
typedef struct polynomial {
int size;
// This needs to be changed to calloc.. not sure how within a struct
TERM terms[20];
} POLYNOMIAL;
...
...
のヘッダファイルです。
POLYNOMIAL *polynomials = (POLYNOMIAL *)malloc(sizeof(POLYNOMIAL) * 8);
// 8 being the max number of polynomials I wan to store
ここで2つの質問がありますが、どのように用語配列のメモリを動的に割り当てる必要がありますか?私は多分空の配列のためにcallocメモリを保持するポインタへのポインタを行うことを考えていました。これはプログラムの開始時に行われますが、多項式割り振りの後に行われます(私は考える)。
もう1つの質問、私はメモリを解放するときにこれが終了する前にプログラムの最後にこれを行う必要があります。言い換えれば、用語配列を解放し、次に多項式配列を解放します。
この時点で、ヒントや指針が参考になります。ありがとう!
彼は彼のために宿題をする資格があります。それを解決するのではなく、彼のためにそれをしないで解決策に導く方が良いのではないでしょうか? –
*用語のcallocをいつ、どこで呼び出す必要がありますか? – Hall9
主なことは、使用している多項式が有効なポインタを指していることです。そうでなければ、メンバーを割り当てることができません。 – Jack