結構和聯合的 Typedef
你可以為 struct
指定別名:
typedef struct Person {
char name[32];
int age;
} Person;
Person person;
與傳統的宣告結構體的方式相比,程式設計師每次宣告該結構的例項時都不需要使用 struct
。
請注意,名稱 Person
(與 struct Person
相對)直到最後一個分號才定義。因此,對於需要包含指向相同結構型別的指標的連結串列和樹結構,必須使用以下任一方法:
typedef struct Person {
char name[32];
int age;
struct Person *next;
} Person;
要麼:
typedef struct Person Person;
struct Person {
char name[32];
int age;
Person *next;
};
typedef
用於 union
型別是非常相似的。
typedef union Float Float;
union Float
{
float f;
char b[sizeof(float)];
};
類似於此的結構可用於分析構成 float
值的位元組。