c语言p=L;是什么意思,还有p=L->next;是什么意思,这两个语句有什么区别,L为链表的头结点
发布网友
发布时间:2022-04-23 01:54
我来回答
共2个回答
热心网友
时间:2023-10-10 18:53
以后问的时候希望再说的清楚一点
问这个问题看来你c的知识了解的还不是很够,链表的知识也有点贫乏啊
链表的话 这里p,L的类型应该都是自己定义的结构体 Node
大致
struct Node{
int entry;
struct Node* next;
}
Node这个结构体里存放了两个变量,
entry就是节点的内容,next是一个Node型指针,存放着下一个节点的地址,指向下一个节点
而所谓链表就是一串节点连在一起,像数组一样,比数组的优点就是比如在数组中间要插入一个数的话,插入位置之后的每一个元素都要向后移一位,而链表的话只需要修改插入位置前的节点的指针就可以了。
你这里的两个语句都是简单的赋值,p = L;就是把让自己定义的Node p = 头结点,
而p = L->next就是让p = 头结点的后一个节点。
这里 ->是结构体中的运算符,表示使用这个结构体中的某个指针变量。来自:求助得到的回答
热心网友
时间:2023-10-10 18:54
p=L是让p指向L这个节点。 p=L->next是让p指向L的下一个节点。首先链表定义中next的定义必须是指向L类型的指针。