リンクされたリストがあり、残りの構造を構築している間に各ノードに対処するのに役立つ一時的な配列を作成しようとしています。その後、配列を解放するつもりですが、のアドレスを保存できないようです構造体をポインタ配列に。
ここに私が問題を抱えている場所の煮詰めたバージョンがあります:
vertex *vertexIndex = NULL;
vertex *vertexHead = NULL;
vertexHead = malloc(sizeof(vertex));
vertexHead->vertexNum = 5;
vertexIndex = malloc(sizeof(vertex*));
vertexIndex[0] = vertexHead; //<<<<<<<<<<< Error on this line
printf("%u\n", (vertexHead[0])->vertexNum);
main.c:72:19: エラー: タイプ 'vertex' からタイプ 'struct vertex *' に代入するときのタイプに互換性がありません</p>
どんな助けでも大歓迎です。
編集
ここに構造体があります
struct edgeStruct {
unsigned int edgeTo;
struct edgeStruct *nextEdge;
};
typedef struct edgeStruct edge;
struct vertexStruct {
unsigned int vertexNum;
edge *edgeHead;
struct vertexStruct *nextVertex;
};
typedef struct vertexStruct vertex;