结构体里的结构体,如何初始化
时间: 2023-11-02 10:02:33 浏览: 255
MFC中通过文件对结构体初始化
4星 · 用户满意度95%
要初始化一个结构体里的结构体,可以使用嵌套的方式进行初始化。具体步骤如下:
1. 首先,定义外层结构体类型和内层结构体类型。
2. 在外层结构体定义中,声明一个内层结构体变量。
3. 使用点操作符 `.` 访问内层结构体变量的成员,并对其进行赋值。
以下是一个示例代码:
```c
#include <stdio.h>
// 定义内层结构体类型
typedef struct {
int x;
int y;
} InnerStruct;
// 定义外层结构体类型
typedef struct {
int a;
InnerStruct b; // 声明内层结构体变量
} OuterStruct;
int main() {
// 初始化外层结构体和内层结构体
OuterStruct myStruct = {
.a = 10,
.b = {
.x = 20,
.y = 30
}
};
// 访问外层结构体和内层结构体的成员
printf("Outer struct a: %d\n", myStruct.a);
printf("Inner struct x: %d\n", myStruct.b.x);
printf("Inner struct y: %d\n", myStruct.b.y);
return 0;
}
```
输出结果:
```
Outer struct a: 10
Inner struct x: 20
Inner struct y: 30
```
阅读全文