C语言_结构体

news2024/11/22 22:49:16

文章目录

  • 一、结构体
    • 结构的基础知识
  • 二、结构体类型的声明
  • 三. 结构体初始化
  • 四.结构成员的类型
  • 五.结构体变量的定义和初始化
  • 六.结构体成员访问
      • 6.1结构体变量访问成员
      • 6.2结构体指针访问指向变量的成员(箭头操作符 ->)
  • 七.结构体传参
          • 总结

一、结构体

结构的基础知识

结构是一些值的集合,这些值称为成员变量,结构的每个成员可以是不同类型的变量。
数组: 一组相同类型元素的集合;
结构体:其实是一组不一定相同类型元素的集合;
复杂对象,不能通过内置类型直接描述和表示,就用结构体来描述复杂类型。

二、结构体类型的声明



三. 结构体初始化



四.结构成员的类型

结构成员可以使标量、数组、指针、甚至是其它结构体

五.结构体变量的定义和初始化

有了结构体类型,如何定义变量



六.结构体成员访问

6.1结构体变量访问成员

结构变量的成员是通过点操作符(.)访问的 点操作符接受两个操作数。


6.2结构体指针访问指向变量的成员(箭头操作符 ->)

有时候我们得到的不是一个结构体变量,而是指向一个结构体的指针。
如何访问成员:如下


七.结构体传参



总结

首选 print2 函数
因为:函数传参的时候,参数是需要压栈的。
如果传递一个结构体对象的时候,结构体过大,参数压栈的的系统开销过大,所以会导致性能的下降。
结论:结构体传参的时候,要传结构体的地址。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/595673.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL 事务简介

事务简介 事务的起源 狗哥和猫爷是⼀对好基友,他们都到银⾏开⼀个账户,他们在现实世界中拥有的资产就会体现在数据库世界的account表中。⽐如现在狗哥有11元,猫爷只有2元,那么现实中的这个情况映射到数据库的account表就是这样&…

机器学习常识 11: logistic 回归

摘要: logistic 回归是使用超平面将空间分开, 一边是正样本, 另一边是负样本. 因此, 它是一个线性分类器. 1. 线性分类器 如图 1 所示, 若干样本由两个特征描述, 对应于二维平面上的点. 它们为正样本或负样本, 由不同颜色表示. 现在需要使用一条直线将正、负样本分开. 这样, …

比ureport好用的报表工具-VeryReport报表工具

作为一名报表开发人员,你一定知道,一个好用的报表工具是多么重要。它可以让你更快、更准确地完成报表开发任务,并且帮助你更好地展现数据。今天我想向大家介绍一款非常优秀的报表工具——VeryReport报表工具。 编辑搜图 请点击输入图片描述&…

STM32 启动文件选择

1. STM32F1xx 系列 (F1) STM32F100xB/C: startup_stm32f100xb.s STM32F100xD/E: startup_stm32f100xe.s STM32F101x6/8/B: startup_stm32f101x6.s, startup_stm32f101x8.s, startup_stm32f101xb.s STM32F101xE/F/G: startup_stm32f101xe.s, …

线程安全与互斥锁(访问控制)

线程安全问题 因为多个线程是共享地址空间的,也就是很多资源都是共享的。 优点:通信方便缺点:缺乏访问控制 因为一个线程的操作问题,给其他线程造成了不可控,或者引起崩溃,异常,逻辑不正确等这种现象:线程安全。 创…

基于Java实现农产品交易平台的设计与实现_kaic

【摘要】农业是我国国民经济的重要组成部分,随着信息化的普及,4G网络、光纤以及5G网络也日益完善,农业信息化的发展成为了必然。同时,由于本年疫情原因,导致农作物积压销售,甚至腐烂造成不必要的浪费&#…

chatgpt赋能python:Python信息抽取——帮您更好地利用数据

Python信息抽取——帮您更好地利用数据 什么是Python信息抽取? Python信息抽取是指利用Python编写程序,从大量的非结构化数据中提取有用的信息的技术。这些数据可以是网页、文本文件、PDF等各种格式,而Python信息抽取则可以帮助您快速、准确…

分享一个case when then when then end的sql语句编写用法

目录 写作背景我和若依的前一部分相同思路我的后续解决思路(不建议)若依后续解决思路(建议)若依后续解决思路举例 写作背景 平时我用case when then else end的机会也不多,之前用它来做对select结果进行计算&#xff…

chatgpt赋能python:Python代码20行,助力千万SEO从业者快速实现网站分析

Python代码20行,助力千万SEO从业者快速实现网站分析 SEO是现代数字营销的核心战略之一。对于千万从业者而言,网站分析是SEO实践的重要一环。而Python作为一门高效、简洁的编程语言,其丰富的第三方库和易学易用的语法使其成为网站分析的强大工…

【MySQL】从0到1打开数据库管理

目录 前言: 一.认识MySQL 二.安装MySQL数据库 三、启动和停止MySQL服务 3.1启动服务的两种方式 3.2停止服务的两种方式 四.链接客户端 4.1使用自带的命令行窗口 4.2使用系统自带的命令窗口 五.MySQL是存储数据的模型 六.SQL语言 结尾: 前言&a…

设计二:51单片机外部中断控制

目录 一、设计内容 二、中断相关知识 1、51单片机中断源 2、中断系统特殊功能寄存器 3、中断函数与函数调用区别 三、仿真原理图 四、程序设计 五、仿真结果 六、思考题 作者有话说 一、设计内容 本次设计使用2个按键,在无按键按下时,最下面一…

chatgpt赋能python:Python代码50行:如何使用Python进行SEO分析

Python代码50行:如何使用Python进行SEO分析 随着互联网的发展,Search Engine Optimization(SEO)已经成为企业网络营销策略中至关重要的一环。而Python作为一种全能的编程语言,已经逐渐成为许多SEO工程师的首选工具。本…

chatgpt赋能python:Python修改List的教程

Python修改List的教程 当涉及到Python编程时,对于处理和管理数据,List是一个非常常见和有用的数据结构。像大多数数据结构一样,有时需要对List进行修改,以便更好地满足程序的需求。因此,本文将向您展示如何使用Python…

数据结构与算法09:二叉树

目录 【树】 【二叉树】 二叉树的遍历 Go代码实现 二叉树的复杂度分析 【二叉搜索树】 Go代码实现 【每日一练:移除元素】 【树】 什么是树?这个不用解释了吧,马路两边种的都是树。数据结构里面的“树”和现实生活中的树类似&#…

chatgpt赋能python:Python会动的图形:如何让你的网站活力四射

Python会动的图形:如何让你的网站活力四射 如果你想让你的网站更具生命力、吸引力和互动性,一种非常有效的方式是使用动态图形。而Python有许多强大的库可以帮助你实现这一目标。在本篇文章中,我们将讨论Python会动的图形的好处、如何实现和…

过滤器JavaWeb:Filter与拦截器Spring:Intercepter

过滤器与拦截器若同时存在,先执行过滤器的放行前,再执行整个拦截器,最后再执行过滤器的放行后 过滤器会拦截所有资源(包括静态资源),拦截器只会拦截Spring环境的资源 Filter的使用 1、创建一个类implement…

深蓝学院C++基础笔记 第 1 章 C++初探

第 1 章 C初探 1&#xff0e;从Hello World 谈起 Hello World: #include <iostream> int mian() { std::cout << "Hello World!" << std::endl; }函数: 一段能被反复调用的代码&#xff0c;可以接收输入&#xff0c;进行处理并(或)产生输出-返回…

Postgres vs MySQL

主要区别及示例 简而言之&#xff0c;Postgres 和 MySQL 之间的主要区别实际上归结为主索引和辅助索引的实现方式以及数据的存储和更新方式。 让我们进一步探讨这个问题。 但首先... 基础知识 索引是一种数据结构&#xff08;主要是 B 树&#xff09;&#xff0c;允许通过…

DAY01_MySQL基础数据类型navicat使用DDL\DML\DQL语句练习

目录 1 数据库相关概念1.1 数据库1.2 数据库管理系统1.3 常见的数据库管理系统1.4 SQL 2 MySQL2.1 MySQL安装2.1.1 安装步骤 2.2 MySQL配置2.2.1 添加环境变量2.2.2 MySQL登录2.2.3 退出MySQL 2.3 MySQL数据模型2.4 MySQL目录结构2.5 MySQL一些命令2.5.1 修改默认账户密码2.5.2…

Linux 计划任务(at与crontab)

一次性计划任务 at Linux 中的【 at 】 命令是用来创建一次性计划任务的&#xff0c; at 命令有一个服务 atd 以后台的模式运行&#xff0c;通过检查当前的时间来决定是 否运行 " 计划 " &#xff0c;默认情况下&#xff0c; atd 服务每 60 秒检 查一次&#x…