typedef是预定义关键字,相当于类型重命名,起个简单的名字,这里就是用List表示struct LNode结构体指针
是数据域,struct LNode next是指针域,就是next这个指针指向的结构体类型的结点。外面的LNode是结构体变量,即结点类型,也是为结构体赋予的新名字。*LinkList是结构体指针,即链表。
typedef是一种在计算机编程语言中用来声明自定义数据类型,后面的表示定义LinkList为LNode指针类型,用逗号进行分隔可以定义多个类型。typedef struct LNode{ 。。。 }LNode,*LinkList可以拆分为typedef struct LNode{ 。。。 } LNode;和typedef struct LNode{ 。。。 } *LinkList。 例子: typedef struct LNode{...
typedef struct LNode *LinkList;此后, LinkList 就是一个新的数据类型 相当於LNode LinkList是指向struct node{}的指针类型 LNode *p与LinkList p作用是一样的,即 LNode * 可用 LinkList 代替
typedef的作用是给已经定义的数据类型起个别名,以符合个人使用习惯和是数据类型含义清晰。 这里是将 struct LNode起个LNode的别名。LNode *L等同与struct Node *L 后面的Linklist也一样,是指向struct LNode指针类型的别名 LinkList L等同与struct Node *L 函数的类型是指函数运行后返回值的类型,...
*LinkList;也就是自定义两个类型,或者说起两个别名. 这个又相当于两句 typedef struct LNode LNode;于是当使用LNode a; 定义变量时,等效于 struct LNode a;另一个 typedef struct LNode *LinkList;使用 LinkList p;定义变量,等效于 struct LNode *p;即 LinkList为struct LNode *的别名....
相当於: struct LNode{ ElemType data; struct Lnode *next; }; typedef struct LNode LNode; typedef struct LNode *LinkList; 此后, LinkList 就是一个新的数据类型 相当於LNode* LinkList是指向struct node{}的指针类型 LNode *p与LinkList p作用是一样的,即 LNode * 可用 LinkList 代替...
用voidInitList(structLNode*L),函数InitList中如果改变了L指针本身的值,对其他函数无影响。用voidInitList(LinkList&L),函数InitList中如果改变了L指针本身的值,也影响调用他的函数。这就是引用方式的调用特点。 下面的例子中main()里面的p不受InitList的影响。 voidInitList(structLNode*L) {L=(LinkList)ma...
typedef 的意思是用后面的名字代替struct node{ int x;struct *next;} 意思就是LNode代表了你定义的结构体 后面还定义了结构体指针,*LinkList LNode *p 为定义了一个指向结构体的指针p LinkList q,这句话的意思还是定义了一个结构体二级指针 所以整体来说 p 和 q基本无区别 ...