中诺建设集团网站,无锡网站制作优化推广,平台推广营销,网页制作培训的课程⛩️博主主页#xff1a;威化小餅干#x1f4dd;系列专栏#xff1a;【C语言】藏宝图#x1f38f; ✨绳锯⽊断#xff0c;⽔滴⽯穿#xff01;一个编程爱好者的学习记录!✨目录结构体类型的声明结构体成员访问结构体传参前言我们是否有想过#xff0c;为什么会有结构体呢…⛩️博主主页威化小餅干系列专栏【C语言】藏宝图 ✨绳锯⽊断⽔滴⽯穿一个编程爱好者的学习记录!✨目录结构体类型的声明结构体成员访问结构体传参前言我们是否有想过为什么会有结构体呢在C语言中我们学过很多种数据类型如char、short、int、long、float、double等等但是仅靠这些数据类型难以去描述我们生活中的生活对象的。例如让我们去描述一本书要处理的数据有书名作者定价...char BookName[20] //书名
char Name[10] //作者
int price //定价
...如果这样去定义了一本书再要定义第二本书时就要再写一遍。这样不仅麻烦而且很容易混淆。我们可以看到想要去描述一个生活中的对象时是需要用到多种数据类型一起去描述一个复杂的对象此时就需要借助结构体的力量了。一、结构体的声明1、1结构体的基础知识结构体是将不同类型的数据按照一定的功能需求进行整体封装封装的数据类型与大小均可以由用户指定。结构体是一些值的集合。这些值称为成员变量。结构的每个成员可以是不同的类型的变量。除此之外我们之前还学过数组数组也是一些值的集合但与结构体不同的是数组是一些相同类型的值的集合。1、2结构的声明struct tag
{member-list;}variable-list;例如struct Book
{char BookName[20]; //书名char Name[10]; //作者int price; //定价
}b1;int main()
{struct Book b1;return 0;
}使用typedef对结构体重名成Book这样在使用时写起来变得简单。typedef struct Book
{char name[10];int price;
}Book;int main()
{Book b3;return 0;
}
1、3结构体类型结构的成员可以是标量、数组、指针、或者是其它结构体。1、4结构体变量的定义和初始化//结构体变量的定义
struct point
{int x;int y;
}p1; //声明类型的同时定义变量p1struct point p2; //单独定义结构体变量p2//初始化的方式
struct stu
{char name[10];int age;
}
struct stu s {zhangsan,19};//初始化struct Node
{int data;struct point p;struct Node* next;
}n1 {10,(4,5),NULL}; //结构体嵌套初始化struct Node n2 {20,(5,6),NULL};//另一种嵌套初始化二、结构体成员访问结构体成员可以通过.操作符和-操作符进行访问。.操作符访问结构结构体变量 . 结构体成员有时侯我们得到的不是结构体变量而是指向一个结构体的指针则使用-操作符。-操作符结构结构体指针-结构体成员三、结构体传参传参有两种值传递和地址传递值传递地址传递小结结构体传参时尽量要传结构的地址效果更好一些。完结✨✨创作不易还请各位小伙伴多多点赞关注收藏✨✨