我在 input_lib.c 中有这个:
#include "input_lib.h"
struct edge {
int from;
int to;
};
input_lib.h 包含我的 typedef:
typedef struct edge edge;
然后在另一个包含 的文件中input_lib.h
,我声明了一个变量并尝试使用它:
edge *my_edge = read_next_edge();
printf("%d, %d", my_edge->from, my_edge->to);
printf
我在该行收到错误:
error: dereferencing pointer to incomplete type
read_next_edge() 返回由以下分配的边*:
edge *next_edge = malloc(sizeof(struct edge));
我的 C 有点生锈,所以我想我只是在某个地方犯了一个小错误,但我很难弄清楚在哪里。如果有人能解释我的错误在哪里,以及为什么我得到它,我将不胜感激。谢谢