// 1.先定义枚举类型, 再给枚举类型起别名
enum Gender
{
kGenderMale,
kGenderFemale
};
typedef enum Gender SEX;
// 2.定义枚举类型的同时给枚举类型起别名
typedef enum Gender
{
kGenderMale,
kGenderFemale
} SEX;
// 3.定义枚举类型的同时给枚举类型起别名, 并且省略枚举原有类型名称
typedef enum
{
kGenderMale,
kGenderFemale
} SEX;
// 1.先定义结构体类型, 再给类型起别名
struct Person
{
int age;
double height;
char *name;
};
// SPerson == struct Person
typedef struct Person SPerson;
// 2.定义结构体类型的同时, 给结构体类型起别名
typedef struct Person
{
int age;
double height;
char *name;
} SPerson;
// 3.定义结构体类型的同时, 给结构体类型起别名, 并且省略掉原有类型的名称
typedef struct
{
int age;
double height;
char *name;
} SPerson;
typedef可以给一个已知的数据类型起别名 (外号)
利用typedef给数据类型起别名的格式:
typedef 原有的数据类型 别名(外号);
注意:
1. typedef不仅能给系统原有的数据类型起别名, 也可以给一个自定义的数据类型起别名
2. 利用typedef给数据类型起别名, 并不会生成一个新的数据类型, 仅仅是给原有的类型起了一个别名而已