typedef struct (資料整理)node
typedef struct LNode{數據結構
ElemType data;spa
struct LNode *next;指針
}LNode,*LinkList;對象
LNode和*LinkList;是與前面的typedef配合起來使用的,意思是給你聲明的結構體起一個別名叫LNode,同時起一個指針別名叫LinkList變量
LNode a;//聲明瞭一個struct LNode型變量a,與寫struct LNode a;等價,省心多了;List
LinkList p;//聲明瞭一個struct LNode *型指針變量p,與寫struct LNode *p等價,也省心多了。next
若是沒有前面的typedef,意思就不同了:LNode就只是一個struct LNode型變量,LinkList也就只是個struct LNode *型指針。數據
typedef struct lnode(結構體及結構體指針)解惑data
數據結構解惑01
在數據結構中會看到
typedef struct QNode
{
QElemType data; //數據域
struct QNode *next; //指針域
}QNode,*QueuePtr;
能夠這樣來理解
typedef struct QNode Qnode
typedef struct QNode *QueuePtr
一樣經過這樣一個例子能夠這樣來理解
typedef struct int ElemType
typedef struct int* ElemTypePtr
第一個是 定義新的整型變量 ElemType
第二個是 定義新的指向整型變量的指針 ElemTypePtr
能夠簡單理解爲 ElemType = int
ElemTypePtr = int*
同理在上面的結構體中
能夠理解爲
typedef struct QNode QNode
typedef struct QNode* QueuePtr
因而
QNode 的對象都是結構體
QueuePtr 的對象都是結構體指針