数据结构链表 Lnode,*Linklist;问题

来源:百度知道 编辑:UC知道 时间:2024/07/07 10:41:04
typedef struct Lnode
{
int data;
struct Lnode *next;
}Lnode,*Linklist; //这个地方的Linklist是什么意思 结构体指针吗

void creatList(Linklist *l) // *l是Linklist的变量吗Linklist 它自己就是指针型的那 Linklist *l= Lnode **l是不是一样的
{
Linklist p,q;
int i,n;
p=(*l)=(Linklist)malloc(sizeof(Lnode)); //Linklist p 和 *l是相等的吗 Linklist *l和Linklist p怎么可能相等
(*l)->next=NULL;
printf("输入结点个数 : ");
scanf("%d",&n);
....
....
...}

typedef struct Lnode
{
int data;
struct Lnode *next;
}Lnode,*Linklist; //这个地方的Linklist是什么意思 结构体指针吗【Linklist是指向Lnode结构类型的指针,上面是对该结构类型的定义】

void creatList(Linklist *l) // *l是Linklist的变量吗 【*l是倒是它的变量。可是Linklist已经是指针,就不需要在l的前面加一个*了,要是再加个*的话,那就是错误的了】 Linklist 它自己就是指针型的那 Linklist *l= Lnode **l是不是一样的【不一样,因为Lnode是结构类型】

p=(*l)=(Linklist)malloc(sizeof(Lnode)); //Linklist p 和 *l是相等的吗【不相等,因为在这里的p表示的只是*l的一个节点空间,p分配的是一个Lnode结构类型大小的空间,是该空间的一个指针,而*l则表示的是整个链表的指针】 Linklist *l和Linklist p怎么可能相等

typedef struct Lnode
{
int data;
struct Lnode *next;
}Lnode,*Linklist; //Linklist是Lnode类型的指针,它指向Lnode类型的结点,Lnode类型的结点有数据域data和指针域next;指针next指向下一个同类型的结点
void creatList(Linklist *l) // l是Linklist类型的变量Linklist,这儿可能是你记错了,没有*,应该是&l而不是*l,如果用*l的话应该是Lnode *l
{
Linklist p,q;
int i,n;
p=(*l)=(Linklist)malloc(sizeof(Lnode)); //这儿你是不是记错了?p=(Linklist)malloc(sizeof(Lnode)); 是对的,p指向头结点
printf("输入结点个数 : ");