1. 程式人生 > >C語言中typedef struct和struct的區別:

C語言中typedef struct和struct的區別:

typedef struct CLinkList
{
    int data;
    struct CLinkList *next;
}node;

上面的CLinkList是識別符號,node是變數型別(相當於(int,char等))。

這語句實際上完成兩個操作:

1) 定義一個新的結構型別

struct CLinkList
{   
    int data;
    struct CLinkList *next;

};

  我們可以用struct CLinkList varName來定義變數,但要注意,使用CLinkList varName來定義變數是不對的,因為struct 和CLinkList

合在一起才能表示一個結構型別。

2) typedef為這個新的結構起了一個名字,叫node

     typedef struct CLinkList node;

因此,node實際上相當於struct CLinkList,我們可以使用node varName來定義改結構體變數