我有一个链表,我正在尝试创建一个临时数组来帮助我在构建结构的其余部分时解决每个节点,然后我打算释放数组,但似乎我无法存储将结构体转换为指针数组。
这是我遇到问题的简化版本:
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:错误:从“struct vertex *”类型分配给“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;