【C语言】操作符详解(四):结构成员访问操作符

结构成员访问操作符

结构体

C语言已经提供了内置类型,如: char、short、int、long、float、double等,但是只有这些内置类型还是不够的,假设我想描述学生,描述一本书,这时单一的内置类型是不行的。描述一个学生需要名字、年龄、学号、身高、体重等;描述一本书需要作者、出版社、定价等。C语言为了解决这个问题,增加了结构体这种自定义的数据类型,让程序员可以自己创造适合的类型。

结构体的声明

struct tag//结构体标签名
{member-list;//成员列表
}variable—list;//变量列表

描述一个学生:

struct student
{char name[20];//名字int age;//年龄char sex[5];//性别char id[8];//学号
}s1;//创建了一个student类型的变量s1

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

变量创建(定义)的两种方法:

struct Point 
{int x;int y;
}p1;//方法1:声明类型的同时创建Point类型的变量p1
struct Point p2;//方法2:单独创建Point类型的变量p2

变量初始化:

struct Stu 
{char name[8];//姓名char sex[5];//性别
};
struct Stu s1 = { "小明","男" };//按顺序初始化
struct Stu s1 = { .sex = "男",.name = "小明" };//指定顺序初始化

结构成员访问操作符

结构体成员的直接访问

结构体成员的直接访问是通过点操作符(.)访问的。点操作符接受两个操作数。如下所示:

 使用方式:结构体变量.成员名

结构体成员的间接访问

有时候我们得到的不是一个结构体变量,而是得到了一个指向结构体的指针。如下所示:

 

使用方式:结构体指针->成员名。

 以上便是我为大家带来的操作符详解(四):结构成员访问操作符的内容,若有不足,望各位大佬在评论区指出,谢谢大家!可以留下你们点赞、收藏和关注,这是对我极大的鼓励,我也会更加努力创作更优质的作品。再次感谢大家!

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

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

相关文章

MATLAB 最小二乘空间直线拟合 (37)

MATLAB 最小二乘空间直线拟合 (37) 一、算法介绍二、算法实现1.代码一、算法介绍 对于空间中的这样一组点:大致呈直线分布,散乱分布在直线左右, 我们可采用最小二乘方法拟合直线,使用下面的代码可以得到图中的结果。(其中图片中的点解释和具体的实现代码如下所示) C++…

淘宝api获取(item_get_app-获得淘宝app商品详情原数据)

淘宝API是一种用于与淘宝网进行交互的接口,它允许开发者使用编程语言和工具来获取淘宝网上的商品信息、店铺信息、订单信息等。在本文中,我将介绍如何使用淘宝API获取淘宝app商品详情原数据,并提供一些示例代码。 一、淘宝API概述 淘宝API是…

云计算:Vmware 安装 FusionCompute

目录 一、理论 1.FusionCompute 二、实验 1.Vmware 安装 FusionCompute(CNA) 2.Vmware 安装 FusionCompute(VRM) 三、问题 1. VRM-WEB登录失败 2.Windows cmd中无法ping通虚拟机 一、理论 1.FusionCompute (…

oracle中的PIVOT函数

在Oracle数据库中&#xff0c;PIVOT 是一个强大的功能&#xff0c;可以将行数据转换为列数据。这在报表和数据分析中非常有用。 基本的 PIVOT 语法如下&#xff1a; SELECT * FROM (SELECT <column1>, <column2>, ..., <pivot_column>, <aggregate_func…

孩子还是有一颗网安梦——Bandit通关教程:Level 13 → Level 14

&#x1f575;️‍♂️ 专栏《解密游戏-Bandit》 &#x1f310; 游戏官网&#xff1a; Bandit游戏 &#x1f3ae; 游戏简介&#xff1a; Bandit游戏专为网络安全初学者设计&#xff0c;通过一系列级别挑战玩家&#xff0c;从Level0开始&#xff0c;逐步学习基础命令行和安全概念…

TrustZone之强制隔离

TrustZone有时被称为一个强制执行的保护系统。请求者表示其访问的安全性,而内存系统决定是否允许该访问。内存系统基于何种方式进行检查呢? 在大多数现代系统中,内存系统的检查是由互连完成的。例如,Arm NIC-400允许系统设计人员为每个连接的完成者指定以下内容: • 安全…

K8s容器debug高级技巧

使用 kubectl exec 执行指令 如果您在 Kubernetes 上运行软件&#xff0c;您会想要在某些时候去调试您所部署的软件的一些方面。对于习惯于使用虚拟机 (VMs) 的人来说能自然使用的一种简单的调试方法&#xff0c;就是连接到一个正在运行的 pod&#xff0c;然后进行解译: ku…

孩子还是有一颗网安梦——Bandit通关教程:Level 12 → Level 13

&#x1f575;️‍♂️ 专栏《解密游戏-Bandit》 &#x1f310; 游戏官网&#xff1a; Bandit游戏 &#x1f3ae; 游戏简介&#xff1a; Bandit游戏专为网络安全初学者设计&#xff0c;通过一系列级别挑战玩家&#xff0c;从Level0开始&#xff0c;逐步学习基础命令行和安全概念…

【算法】【动规】单词拆分

跳转汇总链接 &#x1f449;&#x1f517;算法题汇总链接 1.4 单词拆分 &#x1f517;题目链接 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意&#xff1a;不要求字典中出现的单词全部都使用&#xff0c;并且…

飞轮储能一次调频并网三机九节点系统,虚拟惯性和下垂控制,也可加入虚拟同步机VSG控制,飞轮储能容量可调,系统频率50Hz,离散模型

5MW飞轮储能一次调频并网三机九节点系统&#xff0c;虚拟惯性和下垂控制&#xff0c;也可加入虚拟同步机VSG控制&#xff0c;飞轮储能容量可调&#xff0c;系统频率50Hz&#xff0c;离散模型&#xff0c;仿真运行速度快。 飞轮储能变流器采用双PWM环设计&#xff0c;并网电压电…

优先考虑静态成员类

在Java中&#xff0c;静态成员类&#xff08;static nested class&#xff09;是一种嵌套在另一个类中的类&#xff0c;且被声明为静态。静态成员类不依赖于外部类的实例&#xff0c;可以直接通过外部类的类名来访问。 优先考虑使用静态成员类的情况通常是当这个类与外部类的实…

ShenYu网关注册中心之HTTP注册原理

文章目录 1、客户端注册流程1.1、读取配置1.1.1、用于注册的 HttpClientRegisterRepository1.1.2、用于扫描构建 元数据 和 URI 的 SpringMvcClientEventListener 1.2、扫描注解&#xff0c;注册元数据和URI1.2.1、构建URI并写入Disruptor1.2.2、构建元数据并写入Disruptor1.2.…

【系统架构】集群、分布式概念及系统架构演进过程

集群、分布式概念&#xff1a; 对食物没有太高要求的人在肚子饿的时候一般都会选择去兰州拉面、沙县小吃等小饭馆&#xff0c;这类小饭馆有个很显著的特点&#xff1a;洗菜、切菜、炒菜都是同一个人完成&#xff0c;如果厨子不舒服可能饭馆还会歇业。而一些人流量较大的饭馆的分…

Axure的动态面板

目录 动态面板 什么是Auxre动态模板 动态模板的步骤 应用场景 实战案例 轮播图 多功能登录界面 主界面左侧菜单栏 动态面板 什么是Auxre动态模板 动态面板是Axure中的一个重要功能&#xff0c;它允许用户创建可交互的页面&#xff0c;并模拟用户与页面的交互。通过添加元素…

智能守护,数据安全稳中求胜!上海迅软DSE助力家具家电行业引领潮流!

随着中国经济的蓬勃发展&#xff0c;家具家电企业正迎来“精品制造”的时代&#xff0c;业内竞争日益激烈。为了提升产品竞争力、扩大市场占有率&#xff0c;企业亟需加强对自主品牌的安全建设&#xff0c;确保品牌的自主知识产权、产品生产资料以及销售信息等核心数据不受泄漏…

文本处理工具doctran(集成LLM和NLP库)

今天给大家推荐一款文本处理工具&#xff0c;可以Extract、Redact、Summarize、Refine、Translate、Interrogate&#xff0c;这个工具就是文档转换框架doctran。 欢迎关注公众号 doctran基于OpenAI的GPT模型和开源的NLP库来剖析文本数据。该工具也可以在LangChain框架document…

【HDFS】DFSPacket中lastPacketInBlock字段的关键作用

这篇文章介绍了DFSPacket对象的lastPacketInBlock字段相关的知识。 【HDFS Client】DFSPacket对象什么情况下是lastPacketInBlock? 本文继续深挖lastPacketInBlock这个字段在HDFS Client写数据时的重要作用。 可以这么说,如果这个lastPacketInBlock出问题的话,是会影响增量…

android 13.0 Launcher3禁止拖拽app图标到第一屏

1.概述 在13.0系统rom进行定制化开发Launcher3中,会对Launcher3 做些要求,比如现在的需求就是Launcher3第一屏的图标固定,不让其他屏的图标拖动到 第一屏所以说这个需求和 禁止拖拽图标到Hotseat类似,也是从WorkSpace.java里面寻找解决方案,然后实现相关功能 2.Launcher…

力扣64. 最小路径和

动态规划 思路&#xff1a; 假设 dp[i][j] 为 第 i 行、第 j 列的最小路径和&#xff1b;因为只能向右或者向下移动&#xff0c;所以状态转移方程&#xff1a; dp[i][j] min(dp[i - 1][j], dp[i][j - 1]) v[i][j]当 i 0 时&#xff0c;即第一行&#xff0c;只能向右移动&am…

【MODBUS】Modbus是什么?

Modbus协议&#xff0c;从字面理解它包括Mod和Bus两部分&#xff0c;首先它是一种bus&#xff0c;即总线协议&#xff0c;和12C、SP|类似&#xff0c;总线就意味着有主机&#xff0c;有从机&#xff0c;这些设备在同一条总线上。 Modbus支持单主机&#xff0c;多个从机&#xf…