初学数据结构的单链表问题,书上重定义的东西很多不太了解,所以我写了两个代码段
问题:
1.这两个代码段实现的效果是等价的吗?
2.在第二段代码中 Linklist L 存放的是谁的地址呢?
3.我理解的注释的内容是否是正确的?
真的好难😭
//1.定义单链表结点的结构体
struct Node
{
int data;
struct Node* next;
};
int main()
{
//声明一个指向单链表第一个节点的指针
struct Node* L;
L = new struct Node; //创建新结点
L->next = NULL; //初始化操作
system("pause");
return 0;
}
//1.定义单链表结点的结构体
struct Node
{
int data; //数据域
struct Node* next; //指针域,存放后继节点的地址
};
typedef struct Node LNode;
typedef struct Node* Linklist; //Linklist 相当于 struct Node*
//初始化链表
void InitList(Linklist &L)
{
L = new LNode; //创建新结点,包含数据域和指针域
L->next = NULL; //新结点的指针域为NULL
}
int main()
{
//定义链表 L
Linklist L; //相当于struct Node* L;
InitList(L);
system("pause");
return 0;
}