C语言中结构体嵌套结构体
时间: 2023-12-18 16:29:06 浏览: 139
C语言中结构体嵌套结构体可以通过在结构体中定义另一个结构体的方式来实现。具体实现方法如下所示:
1. 定义一个结构体类型,包含多个成员,其中一个成员是另一个结构体类型的变量。
```c
struct date {
int year;
int month;
int day;
};
struct book {
char title[30];
char author[30];
float value;
struct date publish_date;
};
```
2. 在定义结构体变量时,可以直接使用点运算符来访问嵌套结构体中的成员变量。
```c
struct book my_book = {"C Programming", "Brian W. Kernighan", 29.99, {1988, 3, 22}};
printf("Title: %s\n", my_book.title);
printf("Author: %s\n", my_book.author);
printf("Value: %.2f\n", my_book.value);
printf("Publish Date: %d-%d-%d\n", my_book.publish_date.year, my_book.publish_date.month, my_book.publish_date.day);
```
以上代码定义了两个结构体类型,一个是日期类型的结构体`date`,另一个是书籍类型的结构体`book`,其中`book`结构体中包含了一个`date`类型的成员变量`publish_date`。在定义`book`类型的变量`my_book`时,可以直接使用点运算符来访问`publish_date`中的成员变量`year`、`month`和`day`。
阅读全文