这可能是一个愚蠢的问题,我看到有人问过类似的问题,但我没有得到答案。为什么以下代码会产生:
错误:从类型“struct node_t *”分配给类型“node_t”时类型不兼容</p>
node_t list_array[10];
typedef struct node
{
int value;
struct node *next;
struct node *prev;
} node_t;
node_t* create_node(void)
{
node_t *np;
np->next = NULL;
np->prev = NULL;
np->value = rand() % 10;
return np;
}
int main(void)
{
int i;
for(i = 0; i < 10; i++)
{
list_array[i] = create_node();
}
return 0;
}