易百教程

结构体嵌套

可以定义用于保存日期的结构类型。然后,可以使用此语句指定标记名称为Date的结构体:

struct Date
{
  int day;
  int month;
  int year;
};

可以为DateDog添加typedef关键字:

typedef struct Dog Dog;       // 定义 Dog 为一个结构体类型名称
typedef struct Date Date;     // 定义 Date 为一个结构体类型名称

现在可以定义Dog结构,包括出生日期变量,如下所示:

struct Dog
{
  Date dob;
  int height;
  char name[20];
  char father[20];
  char mother[20];
};

接下来,可以使用常见的语句定义Dog结构体的实例:

Dog d1;
d1.height = 14;

要在一系列赋值语句中设置出生日期,可以使用以下语句表示法来表示逻辑扩展名:

d1.dob.day = 5;
d1.dob.month = 12;
d1.dob.year = 2010;