typedef struct Node
{ int data;
struct Node*next;
}ListNode,*LinkList
单链表这样建立后,该结构指针变量是什么?它指向什么?这里的struct Node 结构类型被定义为了ListNode,那后面的LinkList是什么?它表示什么?
typedef struct Node
{ int data;
struct Node*next;
}ListNode,*LinkList
单链表这样建立后,该结构指针变量是什么?它指向什么?这里的struct Node 结构类型被定义为了ListNode,那后面的LinkList是什么?它表示什么?
该结构指针变量是LinkList,没有初始化不指向任何地址
ListNode,LinkList这两个性质差不多,有本质的区别后者表示指针
具体如:ListNode,*LinkList;p表示是结构变量,不是指针
LinkList p;则p就是结构指针,是一个指针
但是 ListNode* p 等于 LinkList p;
本人觉得,*LinkList,这样定义,方便定义结构指针,还可以增加可读性.....
实际上是定义了两个类型, 一个是
typedef struct Node
{ int data;
struct Node*next;
},名字叫ListNode, 当然在c++中也可以叫Node, 另一个是指向ListNode 的指针, 叫LinkList, 这两个都是类型。 再根据他们来分配变量,就很方便了.