目录
思维导图:
1. 结构体的声明
1.1 结构的基础知识
1.2 结构的声明
1.3 结构成员的类型
1.4 结构体变量的定义和初始化
2. 结构体成员的访问
3. 结构体传参
写在最后:
思维导图:
1. 结构体的声明
1.1 结构的基础知识
结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。
1.2 结构成员的类型
结构的成员可以是标量、数组、指针,甚至是其他结构体。
1.3 结构体变量的声明、定义和初始化
例1:
#include <stdio.h>
struct Book
{
char name[100];
int page;
float price;
}s4, s5;//全局变量
int main()
{
struct Book s1, s2, s3;//结构体的局部变量
return 0;
}
2. 结构体成员的访问
例:
#include <stdio.h>
struct Book
{
char name[100];
int page;
float price;
};
int main()
{
struct Book s1 = { "C语言程序设计",500,66.66f };//结构体变量的创建和初始化
printf("《%s》 %d页 %f元\n", s1.name, s1.page, s1.price);
//打印方法:结构体变量.成员变量
struct Book* p = &s1;
printf("《%s》 %d页 %f元\n", (*p).name, (*p).page, (*p).price);//不推荐使用
printf("《%s》 %d页 %f元\n", p->name, p->page, p->price);
//结构体指针->成员变量名
return 0;
}
输出结果:
输出:
《C语言程序设计》 500页 66.660004元
《C语言程序设计》 500页 66.660004元
《C语言程序设计》 500页 66.660004元
3. 结构体传参
例:
#include <stdio.h>
struct Book
{
char name[20];
int page;
double price;
};
void Print(struct Book s1)
{
printf("《%s》 %d页 %f元\n", s1.name, s1.page, s1.price);
}
void Print2(struct Book* p)
{
printf("《%s》 %d页 %f元\n", p->name, p->page, p->price);
}
int main()
{
struct Book p = { "C语言程序设计",500,66.6 };
Print(p);//传值调用
Print2(&p);//传址调用
return 0;
}
输出结果:
《C语言程序设计》 500页 66.600000元
《C语言程序设计》 500页 66.600000元
一般都使用传址调用。
写在最后:
以上就是本篇文章的内容了,感谢你的阅读。
如果喜欢本文的话,欢迎点赞和评论,写下你的见解。
如果想和我一起学习编程,不妨点个关注,我们一起学习,一同成长。
之后我还会输出更多高质量内容,欢迎收看。