typedef struct Node
{
int data;
struct Node *next;
}Node;
int ListTraverse(Node *L)
{
Node *p = L->next;
while(p)
{
printf("%d",p->data);
p = p->next;
}
printf("\n");
return 1;
}
typedef struct Node
{
int data;
struct Node *next;
}Node,*LinkList;
int ListTraverse(LinkList L)
{
Node *p = L->next;
while(p)
{
printf("%d",p->data);
p = p->next;
}
printf("\n");
return 1;
}
可以看到两种定义方式中,后者加了一个*LinkList,LinkList L等价于Node *L
LinkList是Node的别名
所以Node *&L等价于LinkList &L
这两种定义方式不会对链表造成任何改变
注:本文代码来自于参考资料,分析是自己写的(好像也没啥可分析的),所以就点原创了