C语言结构体中定义结构体
时间: 2024-03-24 07:32:29 浏览: 110
以下是C语言结构体中定义结构体的例子:
```c
typedef struct Person {
char name[16];
int age;
} person;
typedef struct Student {
person info;
int grade;
} student;
int main() {
student s;
strcpy(s.info.name, "Tom");
s.info.age = 18;
s.grade = 90;
printf("Name: %s\n", s.info.name);
printf("Age: %d\n", s.info.age);
printf("Grade: %d\n", s.grade);
return 0;
}
```
在这个例子中,我们定义了两个结构体`Person`和`Student`。`Student`结构体中包含了一个`Person`类型的成员变量`info`和一个整型成员变量`grade`。我们在`main`函数中定义了一个`student`类型的变量`s`,并对其成员变量进行了赋值。最后,我们输出了`s`的成员变量值。
相关问题
c语言结构体里面定义结构体
在 C 语言中,可以在结构体中嵌套定义其他结构体,例如:
```
typedef struct {
int x;
int y;
} Point;
typedef struct {
Point p1;
Point p2;
} Line;
```
这样就定义了一个结构体 Line,其中包含两个 Point 类型的结构体 p1 和 p2,表示一条线段的两个端点。
c语言结构体怎么定义
C语言中的结构体是一种自定义的数据类型,它可以包含多个不同类型的数据成员。结构体的定义格式如下:
```
struct 结构体名 {
数据类型 成员1;
数据类型 成员2;
...
};
```
其中,结构体名是自定义的,可以根据需要进行命名。成员1、成员2等是结构体的数据成员,可以是任意的数据类型,包括基本数据类型和其他结构体类型。例如,下面是一个包含姓名、年龄和性别的人员信息结构体的定义:
```
struct Person {
char name[20];
int age;
char gender;
};
```
在定义完结构体后,我们可以通过以下方式来声明结构体变量并初始化:
```
struct Person p1 = {"Tom", 20, 'M'};
```
这样就定义了一个名为p1的Person类型的结构体变量,并初始化了它的三个成员。我们可以通过以下方式来访问结构体变量的成员:
```
printf("Name: %s\n", p1.name);
printf("Age: %d\n", p1.age);
printf("Gender: %c\n", p1.gender);
```
这样就可以输出p1的姓名、年龄和性别了。
阅读全文