C 分配内存的链表
当我试图为head程序分配内存时,我创建了这个链表C 分配内存的链表,c,linked-list,C,Linked List,当我试图为head程序分配内存时,我创建了这个链表 struct Node { int val; struct Node *next; }; struct List { struct Node *head; struct Node *tail; int size; }; typedef struct List *List; Test只是一个指针。它没有指向任何地方。它可以为空或指向任何随机地址。 您必须分配一些内存才能使用它: List Test=malloc(sizeof(Str
struct Node
{
int val;
struct Node *next;
};
struct List
{
struct Node *head;
struct Node *tail;
int size;
};
typedef struct List *List;
Test
只是一个指针。它没有指向任何地方。它可以为空或指向任何随机地址。
您必须分配一些内存才能使用它:
List Test=malloc(sizeof(Struct List))代码> 此选项将分配给dynamic struct,Test将指向它
Struct List Test={0}代码> 此选项将在堆栈上使用结构
指向哪里?不要在typedef后面隐藏指针性质。它更容易混淆而不是帮助。Struct
带有大写字母S
?还有,你怎么知道还有一个结构列表
。我会使用“列表”
List Test;
Test->head = (struct Node *) malloc(sizeof(struct Node));