结构体之引用结构体成员变量
引用结构体成员变量
一个结构体包含一个或者多个成员变量,在实际使用中,就需要对其成员变量进行引用,对于一个已经定义了的结构体变量和一个指向该结构体的指针变量。
可以用一下三种情况引用结构体 成员变量。
1、由结构体变量名引用其成员:
结构体变量名.成员名
2、由指向结构体的指针变量引用结构体成员
指针变量名 -> 成员名
3、(*指针变量名).成员名
结构体指针:指向结构体变量的指针,一个结构体变量的起始地址就是这个结构体变量的指针。如果把一个结构体变量的起始地址存放在一个指针变量中,那么这个指针变量就是指向该结构体的变量。
其中,"." 是成员运算符,它在所有的运算符中优先级最高。 “->” 结构体指向运算符
struct student { //成员列表 string name; //姓名 int age; //年龄 int score; //分数 };struct student stu = { "小明",6,100, };
int main() { //定义了一个结构体 指针p,并且对它进行初始化struct student * p = &stu; //引用结构体成员变量的三种形式:cout<<"stu.score= "<<stu.score<<endl;cout<<"p->score ="<<p->score<<endl;cout<<"(*p).score= "<< (*p).score<<endl;system("pause");return 0; }
}
另外,对于引用结构体数组变量的成员变量。具体做法:
#include<iostream>
using namespace std;
#include<string>
struct student {//成员列表 string name; //姓名 int age; //年龄 int score; //分数
};
//定义结构体变量,并初始化。
struct student stu[3] = {{"小明",6,100 },{"小芳",7,99 },{"小华",16,80 }
};
int main() {struct student * p;for (p = stu; p < stu + 3; p++){cout << "年龄是:" << p->age << "名字是:" << p->name << "分数是:" << p->score << endl;}system("pause");return 0;}
结构体之引用结构体成员变量相关推荐
- bool c语言_C/C++编程笔记:C语言结构体—位域,如何指定成员变量所占Bit?
有些数据在存储时并不需要占用一个完整的字节,只需要占用一个或几个二进制位即可.比如开关只有通电和断电两种状态,用 0 和 1 表示足以,也就是用一个二进位.正是基于这种考虑,C语言又提供了一种叫做位域 ...
- C语言边角料:结构体中指针类型的成员变量,它的类型重要吗?
一.前言 昨天在编译代码的时候,之前一直OK的一个地方,却突然出现了好几个 Warning! 本着强迫症要消灭一切警告的做法,最终定位到:是结构体内部, 指向结构体类型的指针成员变量导致的问题. 这个 ...
- c++ new一个结构体_C语言结构体,又一个纸老虎,纯干货讲解(附代码)
来源:网络,排版整理:晓宇 微信公众号:芯片之家(ID:chiphome-dy)结构体的定义结构体(struct)是由一系列具有相同类型或不同类型的数据构成的数据集合,也叫结构.结构体和其他类型基础数 ...
- 【零基础学C语言】知识总结八:struct 结构体与 union 共用体
struct 结构体 struct即结构体,C程序中经常需要用相关的不同类型的数据来描述一个数据对象.例如,描述学生的综合信息时,需要使用学生的学号.姓名.性别等不同类型的数据时,像这种数据类型总是在 ...
- Go 学习笔记(33)— Go 自定义类型 type(自定义结构体、结构体初始化、结构体内嵌、自定义接口)
1. 自定义类型格式 用户自定义类型使用关键字 type ,其语法格式是: type newType oldType oldType 可以是自定义类型.预声明类型.未命名类型中的任意一种. newTy ...
- c语言用typedef定义结构体,C语言结构体定义 typedef struct
c语言规范,定义结构体: typedef struct ANSWER_HEADER { u8 u8Type; u8 u8Code; u32 u32TimeStamp; struct ANSWER_HE ...
- java include 传递对象_变量的值传递,地址引用(和对象成员变量、局部变量创建和初始化的内存机制)...
变量的值传递,地址引用(和对象成员变量.局部变量创建和初始化的内存机制) 变量的值传递,地址引用: 搞懂=含义,=即指向,看指向的内存块是否发生改变,还有是否是新内存块, 通过指向可以控制内存块的值. ...
- Java基础:成员变量的继承与覆盖
1.前言 最近在研究Java多态时,发现子类通过继承父类来实现Java中的多态.子类可以继承父类的成员方法和成员变量.子类中如果有同名的成员方法,并且方法的参数和返回值一样,那么这个子类定义的这个方法 ...
- 重写 隐藏 java_Java中方法的重写与成员变量的隐藏
这篇文章讨论了Java面向对象概念中一个基本的概念?Field Hiding(隐藏成员变量) 在讨论这个问题之前,我们看一段特别特别简单的代码,请问一下方法的数据结果是什么? /** * @autho ...
最新文章
- Qt学习之路(56): 二进制文件读写
- 案例:验证用户名是否可用
- Python中异常处理的用法
- portainer容器可视化管理部署简要笔记
- 使用CSS和JQuery实现表格单元格内容超出时部分隐藏,隐藏部分以...显示
- js根据数组对象中某属性进行排序
- java 抛出异常_我的Java Web之路51 - Java异常基础
- Luogu P2048 [NOI2010]超级钢琴
- 应用商店打开服务器错误,教你应用商店出现错误的修复方法
- 我的服务器开发之路-服务器SSH默认端口22和ftp默认端口21修改
- 铁路、公路施工企业劳务实名制管理系统解决方案
- MySQL函数及用法
- CTF 小白教程《从0到1:CTFer成长之路》SQL - 2 解题过程
- 如何破解AppOps (需要root)
- 移动端框架 - Bootstrap
- Quartz(二) quartz测试
- 局域网arp攻击_网络安全工程师教Kali Linux:ARP欺骗概述
- python中的list和array的不同之处
- py218-基于Python+django的化妆品美妆销售商城网站#毕业设计
- 追剧达人观看电影源码