c语言:初识结构体

news2024/11/16 23:43:59

初识结构体

  • 一.结构体声明
    • 1.结构体的概念
    • 2.声明
  • 二.结构体的基础使用
  • 三.结构体变量的定义和初始化

在这里插入图片描述

一.结构体声明

1.结构体的概念

结构体是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量

这里与数组做出区分:数组是一组相同类型元素的集合

结构体主要是用来描述复杂对象,比如一本书,我们需要描述它的内容,作者名,售价…很明显只用int char…类型是不行的

2.声明

在这里插入图片描述

至于variable-list是什么请看下文结构体的基础使用

例子:我需要描述一个学生

在这里插入图片描述

二.结构体的基础使用

在这里插入图片描述

注意结构体的声明只是定义了该结构体的类型(这类型就像是int ,char…是结构体被定义的类型),而s1,s2,s3才是向计算机申请了一块空间

在这里插入图片描述

而创建的变量才开辟空间

在这里插入图片描述

这里看看variable-list是什么

在这里插入图片描述

s1,s2,s3和s4,s5的区别就像是定义一个全局变量i和一个局部变量i的区别

结构体的成员可以是变量,字符,数组甚至是其他结构体

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

在这里插入图片描述

定义其实很简单,一般有三种方法,其中s4,s5,s6是全局变量,s1,s2,s3是局部变量

接下来初始化结构体变量
在这里插入图片描述

这里注意括号内的元素要一一与声明内的相对应

那接下来将它打印出来

在这里插入图片描述

在这里插入图片描述

这里打印也是需要依次对应的,.操作符就是专门访问结构体

接下来使用指针打印

在这里插入图片描述
在这里插入图片描述

这里的道理其实是一样的传的是s1的地址那么*s1就是s1,然后再用.操作符。

其实这样写有些麻烦,所以c语言有->符号专门访问这种传址调用

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

上海 Meetup | 一键获取 11 大云原生热门开源项目技术分享入场券

活动介绍 微服务 x 容器开源开发者 Meetup 是由阿里云飞天 club 与云原生应用平台共同打造,面向一线开发者的技术交流活动,整体内容聚焦容器 & 微服务方向,旨在通过热门的开源技术、云原生在企业的应用实践案例、架构设计思维等&#xf…

CopyOnWriteArrayList 是如何保证线程安全的?

本文已收录到 AndroidFamily,技术和职场问题,请关注公众号 [彭旭锐] 提问。 前言 大家好,我是小彭。 在上一篇文章里,我们聊到了ArrayList 的线程安全问题,其中提到了 CopyOnWriteArrayList 的解决方法。那么 CopyOn…

倒计时9天|Zabbix中国峰会15位重磅嘉宾抢先看!

2022Zabbix峰会演讲嘉宾 (有奖互动:转发本文或任一讲师海报至朋友圈,保留5分钟,即可获得Zabbix定制周边礼品一份,仅限100份,先到先得,详情联系文末小Z) 第7届Zabbix中国峰会将于12月2-3日举行…

腾讯产品经理的自动化工作流

作为腾讯产品经理的一员,Johnny中扬每天需要面对来自各方繁琐的需求。如何管理好用户需求、并及时规划、完成、反馈,上周中扬和我们分享了他的工作流。如果你也是产品经理,或者对腾讯产品经理的工作日常比较感兴趣,错过了上次的直…

【数据结构】堆的实现

堆1.堆:一种二叉树2.堆的概念及结构3.堆的实现3.1 创建堆的结构3.2 堆的初始化3.3 堆的插入3.4 堆的向上调整法(up)3.5 打印堆的数据3.6 到这里就可以实现一个基本的堆了3.7 向下调整法down(非常重要的一个方法)3.8 最…

Java项目:JSP校园运动会管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 本项目包含三种角色:运动员、裁判员、管理员; 运动员角色包含以下功能: 运动员登录,个人信息修改,运动成绩…

【网络安全】——sql注入之奇淫巧技bypass(持续更新中)

作者名:Demo不是emo 主页面链接:主页传送门创作初心:舞台再大,你不上台,永远是观众,没人会关心你努不努力,摔的痛不痛,他们只会看你最后站在什么位置,然后羡慕或鄙夷座右…

微信点餐小程序开发_分享微信点餐小程序可以实现哪些功能

线下餐饮实体店都开始摸索发展网上订餐服务。最多人选择的是入驻外卖平台,但抽成高,推广还要另买流量等问题,也让不少商家入不敷出。在这种情况下,建立自己的微信订餐小程序,做自己的私域流量是另一种捷径。那么&#…

Redis关闭持久化

版本: 7.0.4 一、持久化说明 1、redis默认是开启持久化的 2、默认持久化方式为RDB 二、redis 关闭持久化 关闭 RDB 持久化 1、注释掉原来的持久化规则 # save 3600 1 300 100 60 10000或# save 3600 1 # save 300 100 # save 60 100002、把 save 节点设置为空 s…

GORM CRUD 5 分钟快速上手

文章目录1.ORM 是什么2.GORM 是什么3.安装4.连接 DB5.创建数据表6.增加(Create)7.查询(Read)8.更新(Update)9.删除(Delete)10.小结参考文献1.ORM 是什么 ORM(Object Rel…

Linux文件压缩和解压命令【gzip、gunzip、zip、unzip、tar】【详细总结】

解压和压缩gzip/gunzipgzip 压缩文件gunzip 解压缩文件zip/unzipzip命令语法命令选项实例unzip语法:命令选项实例tar语法实例例一:将文件打包成tar包例二:查阅 tar包内有哪些文件例三:将tar 包解压gzip/gunzip gzip用于解压文件&…

纵目科技冲刺科创板上市:拟募资20亿元,股东阵容强大

11月23日,纵目科技(上海)股份有限公司(下称“纵目科技”)在上海证券交易所递交招股书,准备在科创板上市。本次冲刺上市,纵目科技计划募资20亿元,拟用于上海研发中心建设项目、东阳智…

Redis常用指令汇总

文章目录一、5种数据类型二、常用指令汇总三、应用汇总提示:以下是本篇文章正文内容,Redis系列学习将会持续更新 一、5种数据类型 Redis 数据存储格式:  ● redis 自身是一个 Map ,其中所有的数据都是采用 key : value 的形式存储。  ● 数…

【c++】 继承的相关问题

继承无论是那种继承方式,基类继承的私有属性都无法访问不论父类中的属性被啥修饰,都会被子类全盘接收public,protected,private继承private 继承和protected 继承都是类中可以访问,类外无法访问,这有什么区别呐?继承的…

区间信息维护与查询【最近公共祖先LCA 】 - 原理

区间信息维护与查询【最近公共祖先LCA 】 - 原理 最近公共祖先(Lowest Common Ancestors,LCA)指有根树中距离两个节点最近的公共祖先。 祖先指从当前节点到树根路径上的所有节点。 u 和v 的公共祖先指一个节点既是u 的祖先,又是…

React基础之Context

前文有讲到Vue中的provide透传,祖孙组件之间通信。在react中也有类似的存在,他就是context,context的作用也是让祖孙组件之前通信。 React中,通过createContext方法来创建一个Context对象。 import React, { createContext } fr…

sqli-labs/Less-51

这一关的欢迎界面依然是以sort作为注入点 我们首先来判断一下是否为数字型注入 输入如下 sortrand() 对尝试几次 发现页面并没有发生变化 说明这道题的注入类型属于字符型 然后尝试输入以下内容 sort1 报错了 报错信息如下 我们从报错信息可以知道这道题的注入类型属于单…

JS-基础

JavaScript 基础第一天 01 JavaScript介绍 1.1 JavaScript 注释 单行注释 符号://作用://右边这一行的代码会被忽略快捷键:ctrl / 块注释 符号:/* */作用:在/* 和 */ 之间的所有内容都会被忽略快捷键:s…

【附源码】计算机毕业设计JAVA移动在线点菜系统服务端服务端

【附源码】计算机毕业设计JAVA移动在线点菜系统服务端服务端 目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术&#xff1…

【Unity】TimeLine系列教程——编排剧情!

前言 我们经常会看到游戏中有很多“花里胡哨”的系统,比如这样: 火影忍着疾风传 碧之轨迹S技能 这种效果感觉上像播放视频一样,但是却能将游戏不同的敌人加到镜头里面,有时候甚至根据双方关系还会有不同的反馈。如果是做视频或…