结构体的声明
结构的基础知识:结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量
struct tag {
member-list;
}variable-list;
【例】描述一个学生
//struct 结构体关键字
//Stu 结构体标签
//struct Stu 结构体类型
struct Stu {
char name[20];
short age;
char gender[5];
}s1, s2, s3; //s1, s2, s3是三个全局的结构体变量
int main() {
struct Stu s; //局部变量
return 0;
}
typedef struct Stu {
char name[20];
short age;
char gender[5];
}Student; //重新命名struct Stu为Student
int main() {
Student s;
}
结构成员的类型
结构的成员可以是标量、数组、指针、甚至是其他结构体
结构体成员变量的访问
函数传参的时候,参数需要压栈。如果传递一个结构体对象的时候,结构体过大,参数压栈的系统开销较大,所以会导致性能的下降
结论:结构体传参的时候,要传结构体的地址