typedef struct

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 的對象都是結構體指針

相關文章
相關標籤/搜索