🤩本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。
🥰内容专栏:这里是《C知识系统分享》专栏,笔者用重金(时间和精力)打造,基础知识一网打尽,希望可以帮到读者们哦。
🥴内容分享:本期会对C语言中的结构体进行具体讲解,各位看官姥爷快搬好小板凳坐好叭。
😘:不要998,只要一键三连,三连买不了吃亏,买不了上当(写作不易,拜托拜托)。
目录
🤓前言
🧐结构体的声明
😎结构体的基础知识
😭结构成员的声明
😩 结构成员的类型
👻结构体变量的定义和初始化
💭 结构体成员的访问
😀 结构体传参
🥸总结
🤓前言
上期内容我们介绍了指针,对于什么是指针,指针的作用,野指针,二级指针等一些内容进行了一些分析,让大家对指针有一个具体的了解,以至于对指针没有那么害怕。这期内容我们要将一个重要的知识结构体,对结构体进行分析。不够这里还是像指针一样,进行浅浅的说明,在后期我们的知识体系更加全面后,再来进行更深的了解。
🧐结构体的声明
😎结构体的基础知识
结构是一些值的集合,这些值成为成员变量。结构的每个成员是可以为不同类型的变量的。
😭结构成员的声明
😩 结构成员的类型
结构成员可以是标量,数组,指针,甚至是其他结构体。
👻结构体变量的定义和初始化
有了结构体类型,接下来就是定义变量和初始化了
💭 结构体成员的访问
结构体变量访问成员
结构体变量的成员是通过点操作符(.) 访问的。点操作符接受两个操作数。
结构体指针访问指向变量的成员
有时我们访问的不是一个结构体变量,而是一个结构体指针。那该如何访问呢?如下是也:
😀 结构体传参
这里我们直接上代码来举例帮大家了解:
在这里有一个问题:大家是觉得print1好还是print2函数好呢?
当然是print2函数好啦
原因: 函数传参的时候,参数是需要压栈的。如果一个传递结构体对象的时候,结构体过大,参数压栈的系统开销过大,会导致性能的下降。
结论:结构体传参的时候,要传结构体的地址
🥸总结
我们通过简短的分析,对结构体进行了初步的介绍,目的还是为了可以看懂结构体的代码和可以简单的写出一些结构体。更加深奥的代码将会在后期中进行详细的讲解,请大家敬请期待叭!