head.Next与 head->pNext 的区别
发布网友
发布时间:2023-08-28 05:38
我来回答
共2个回答
热心网友
时间:2024-12-05 06:38
typedef struct node
{
elemtype data
struct node*next
}LinkList;
LinkList * head;首先这里的struct node的类型=LinkList,前面typedef的作用。然后在用LinkList定义了个指针head,相当于struct node *head,那么指针head就可以引用这个结构体的成员变量。
head.Next指的是指指针变量head调用结构体变量成员Next。Next就是下一个结点的地址。
typedef struct Node
{
int data;
struct Node *pNext;
}Node;
struct LinkList
{
Node *head;
}
我把你老师定义的稍微改了下,在给你说明下。
head->pNext指的是结构体Linklist中成员为struct LinkList的指针head,他调用结构体Node中的成员pNext,pNext为下一结点的地址。注意类型Node与struct Node类型一样,只是换了个名字而已,然后在用Node定义了个名字为head的指针变量,head的作用为可以调用Node类型(struct Node类型),但是调用后的任然属于结构体LinkList的成员。
其实定义个链表的表示方法有千万种,其核心都是一样,你们老师只不过换了种表示方法而已,自己好好琢磨下吧,希望我说的对你能有帮助。
热心网友
时间:2024-12-05 06:39
书上是按一个结构体定义的,而你老师给出的是一个嵌套结构体。LinkList里包含了Node,而Node自己就是一个单独的结构体。