一、最經常使用定義方式:定義結構體data,此時結構體至關於一個類型,好比int,如需使用此結構體,方法同intide
struct data { char aa; char bb; char cc; int dd; }; struct data sum1, sum2;
二、定義結構體data同時,定義須要使用的結構體變量sum1,sum2。如後面再須要定義結構體變量,方法同1.net
struct data { char aa; char bb; char cc; int dd; }sum1, sum2; struct data sum3;
三、定義結構體時,結構體名稱缺省,同時定義結構體變量sum1,sum2。但後面不可再定義結構體變量!code
struct { char aa; char bb; char cc; int dd; }sum1, sum2; struct sum3; <- 編譯器報錯
四、使用typedef 定義結構體,定義結構體data時,使用typedef,此種形式幾乎不使用,再定義結構體變量時,仍需加struct,不然編譯器報錯!blog
typedef struct data { char aa; char bb; char cc; int dd; }; struct data sum3;
五、使用typedef定義結構體同時,給data結構體別名DATA,後續定義可不用使用struct data,直接使用DATA便可。get
typedef struct data { char aa; char bb; char cc; int dd; }DATA; struct data sum3; <- 可用,但不推薦 DATA sum1; <- 最經常使用方式
六、使用typedef定義結構體時,省掉結構體第一個別名data,直接在後面加DATA,使用方法同5。編譯器
typedef struct { char aa; char bb; char cc; int dd; }DATA; DATA sum3;
7.鏈表中的使用方法it
typedef struct data { int value; struct data *next;//struct必需要加 }DATA; DATA sum3;
原文連接:https://blog.csdn.net/ziguo2010/article/details/79897327編譯