再识结构体

简介: 再识结构体

一、创建结构体的两种方法


image.png

第一种是在创建结构体类型后,直接创建结构体变量,注意此时的结构体变量是全局变量,而在主函数内部创建的结构体变量是局部变量


二、结构体初始化的“套娃”


image.png

结构体内部还可以再次定义结构体,但在初始化时,需要在{ } 里面再次{ }


三、结构体传参

先说结论,结构体传参需要传地址!


image.png

问题:print1和print2哪个更好?

解答:

第二种好。
第一种将结构体s这个实参直接传过去,所以需要一个形参进行接收,而形参又是实参的一份临时拷贝,所以需要再一次创建一个结构体,而一个结构体创建所需要的内存可能很大,而print2将地址传过去,只需要指针进行接受,只需要4个或8个字节的内存空间,相比较而言,内存空间就占的很少了


四、栈


image.png

栈是数据结构的一种,栈只能从顶上加减,有定义插入一个元素:压栈,删除一个元素:出栈。

内存区的分配:

image.png


image.png

当函数传参时,把参数传过去这一动作也称为压栈,即函数传参时,参数是需要压栈的。

相关文章
|
存储 弹性计算 数据库
在沙特,阿里云和沙特电信携手提供云计算服务
在沙特,阿里云和沙特电信携手提供云计算服务
740 0
每日一题---剑指 Offer 32 - II. 从上到下打印二叉树 II[力扣][Go]
每日一题---剑指 Offer 32 - II. 从上到下打印二叉树 II[力扣][Go]
每日一题---剑指 Offer 32 - II. 从上到下打印二叉树 II[力扣][Go]
|
4天前
|
人工智能 运维 安全
|
2天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
|
9天前
|
人工智能 JavaScript 测试技术
Qwen3-Coder入门教程|10分钟搞定安装配置
Qwen3-Coder 挑战赛简介:无论你是编程小白还是办公达人,都能通过本教程快速上手 Qwen-Code CLI,利用 AI 轻松实现代码编写、文档处理等任务。内容涵盖 API 配置、CLI 安装及多种实用案例,助你提升效率,体验智能编码的乐趣。
814 109
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
B站开源IndexTTS2,用极致表现力颠覆听觉体验
在语音合成技术不断演进的背景下,早期版本的IndexTTS虽然在多场景应用中展现出良好的表现,但在情感表达的细腻度与时长控制的精准性方面仍存在提升空间。为了解决这些问题,并进一步推动零样本语音合成在实际场景中的落地能力,B站语音团队对模型架构与训练策略进行了深度优化,推出了全新一代语音合成模型——IndexTTS2 。
410 9