動的メモリ割り当てに問題があります。ここにコードがありますので、助けてください。
#include <stdio.h>
int i;
typedef struct{
int A;
}node;
typedef struct Model
{
node *m;
} Model;
Model M;
void initialize(Model *a, int size)
{
a->m = (node*) malloc(size);
}
void model_init(Model *a, int len)
{
int i;
for (i=0;i<len;i++) a->m[i].A = 20;
}
int main()
{
initialize(&M ,10);
model_init(&M, 10);
for (i=0;i<10;i++) printf("%d\n",M.m[i].A);
}
10 個のノードを持つモデルを作成しようとしていて、変数 A のノードに値を割り当てたいと考えています。
たとえば、 Mm[2].A=20と言いたいだけです
私は何を間違っていますか?助けてください。
タイ