指向结构的指针 struct结构名称 *结构指针变量名
//指向结构的指针 struct结构名称 *结构指针变量名
//(*结构指针变量名).成员变量名
//结构指针变量->成员变量名
1 #include<stdio.h>
2 #include<stdlib.h>
3 #include<string.h>
4
5
6 struct Martial //门派
7 {
8 int id; //门派 id
9 char name[50]; //门派m名称
10 int count; //门派人数
11 char type[50]; //门派的类型 正派 中立 邪派
12
13
14 };
15
16 struct Player
17 {
18 int id;
19 char name[50]; //玩家名称
20 char pass[50]; //玩家的登录密码
21 char sex[10]; //玩家性别 男 M 女 X
22
23 struct Martial martial; //玩家的门派
24
25
26 };
27
28 int main()
29 {
30
31 struct Player player = {1,"UZI","123456","M",{1,"RNG",500,"ADC"}};
32
33
34 struct Player player2 = {2,"Theshy","123456","M",{2,"IG",500,"TOP"}};
35 //struct结构名称 *结构指针变量名
36 struct Player *ptr_player2 = &player2;
37
38
39
40 struct Player player3 = {3,"Clearlove7","123456","M",{3,"EDG",500,"Jungle"}};
41 struct Player *ptr_player3= &player3;
42
43
44
45 struct Player player4 = {4,"Faker","123456","M",{4,"STK",500,"Mid"}};
46
47 struct Player *ptr_player4= &player4;
48
49
50 printf("%d\t %s\t\t %s\t %s\t %d\t %s\t %d\t %s\n",player.id,player.name,player.pass,player.sex,player.martial.id,player.martial.name,player.martial.count,player.martial.type);
51
52 printf("%d\t %s\t\t %s\t %s\t %d\t %s\t %d\t %s\n",player2.id,player2.name,player2.pass,player2.sex,player2.martial.id,player2.martial.name,player2.martial.count,player2.martial.type);
53 //使用指针来访问
54
55 //(*结构指针变量名).成员变量名
56
57 printf("%d\t %s\t %s\t %s\t %d\t %s\t %d\t %s\n",(*ptr_player3).id,(*ptr_player3).name,(*ptr_player3).pass,(*ptr_player3).sex,(*ptr_player3).martial.id,(*ptr_player3).martial.name,(*ptr_player3).martial.count,(*ptr_player3).martial.type);
58 //结构指针变量->成员变量名
59 printf("%d\t %s\t\t %s\t %s\t %d\t %s\t %d\t %s\n",ptr_player4->id,ptr_player4->name,ptr_player4->pass,ptr_player4->sex,ptr_player4->martial.id,ptr_player4->martial.name,ptr_player4->martial.count,ptr_player4->martial.type);
60
61
62
63 }

指向结构的指针 struct结构名称 *结构指针变量名的更多相关文章
- C和C指针小记(十五)-结构和联合
1.结构 1.1 结构声明 在声明结构时,必须列出它包含的所有成员.这个列表包括每个成员的类型和名称. struct tag {member-list} variable-list; 例如 //A s ...
- Go语言基础之8--面向对象编程1之结构体(struct)
一.结构体详解 1.1 声明和定义 1.Go中面向对象是通过struct来实现的, struct是用户自定义的类型 2.Go 语言中数组可以存储同一类型的数据,但在结构体中我们可以为不同项定义不同的数 ...
- C语言笔记 08_函数指针&回调函数&字符串&结构体&位域
函数指针 函数指针是指向函数的指针变量. 通常我们说的指针变量是指向一个整型.字符型或数组等变量,而函数指针是指向函数. 函数指针可以像一般函数一样,用于调用函数.传递参数. 函数指针变量的声明: / ...
- C语言结构体(struct)使用方法
基本定义:结构体,通俗讲就像是打包封装,把一些变量有共同特征(比如同属于某一类事物的属性)的变量封装在内部,通过一定方法访问修改内部变量. 结构体定义: 第一种:只有结构体定义 struct stuf ...
- C语言结构体(struct)常见使用方法
基本定义:结构体,通俗讲就像是打包封装,把一些变量有共同特征(比如同属于某一类事物的属性)的变量封装在内部,通过一定方法访问修改内部变量. 结构体定义: 第一种:只有结构体定义 struct stuf ...
- 结构体类型struct
教学视频 定义: struct student{CString name; int num; TCHAR sex; int age; }; //注意有个分号 student zansan = {_ ...
- C和C指针小记(十七)-使用结构和指针-链表
1.链表 链表(linked list)即使是一些包含数据的独立数据结构的(Node)集合. 链表中的每个节点通过链或指针链接在一起. 程序通过指针访问链表中的节点. 节点通常是动态分配的,但也有由节 ...
- 深入理解指针—>结构体里的成员数组和指针
单看这文章的标题,你可能会觉得好像没什么意思.你先别下这个结论,相信这篇文章会对你理解C语言有帮助.这篇文章产生的背景是在微博上,看到@Laruence同学出了一个关于C语言的题,微博链接.微博截图如 ...
- C语言结构体及typedef关键字定义结构体别名和函数指针的应用
结构体(struct)的初始化 struct autonlist { char *symbol; struct nlist nl[2]; struct autonlist *left, *right; ...
随机推荐
- 01 JumpServer安装
1.0.环境说明: 操作系统类型 主机名称 用户及密码 角色 eth0(Vmnet8) eth1(Vmnet1) 防火墙状态 selinux centos7.4 controlnode root:12 ...
- 95、配置ntp服务器
95.1.ntp简介: ntp服务使用的是udp的123端口,如果开启了防火墙要记得放开这个端口: NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步 ...
- gRPC(3):拦截器
在 gRPC 调用过程中,我们可以拦截 RPC 的执行,在 RPC 服务执行前或执行后运行一些自定义逻辑,这在某些场景下很有用,例如身份验证.日志等,我们可以在 RPC 服务执行前检查调用方的身份信息 ...
- RabbitMQ 常用知识点总结
基础 为什么使用 MQ? 1.削峰:在某个模块接收到超过最大承受的并发量时,可以通过 MQ 排队来使这些削减同一时刻处理的消息量.减小并发量. 2.解耦:在发送 MQ 处理业务时,可以使业务代码与当前 ...
- CentOS-安装node_exporter导出机器指标
注:node_exporter导出机器指标配合 Grafana+Prometheus使用,可参考:远程监控服务器指标 创建相关目录 $ mkdir /home/prometheus/ -p $ cd ...
- AOP面向切面的实现
AOP(Aspect Orient Programming),我们一般称为面向方面(切面)编程,作为面向对象的一种补充,用于处理系统中分布于各个模块的横切关注点,比如事务管理.日志.缓存等等. AOP ...
- MVC 与 三层架构
https://www.bilibili.com/video/av29086718/?p=24 MVC: MVC与三层架构进行比较:
- buu SCTF Who is he
1. 下载好附件,发现是unity的题目,找到assembly.dll,用dnspy直接打开干,在引用下面就是实际的代码 2.找到了核心代码,发现逻辑也挺简单的, 输入的text,要和一串字符串进行b ...
- 滑动窗口通用解leetcode字符串匹配问题
滑动窗口,这玩意解决一些字符串匹配的题目是真的挺好用的,虽然本质还是双指针. 思路: 1.维护一个窗口,不断的向右边移动 2.满足要求后,移动左边,当不满足时,跳出. 3.重复1,2.得出答案. 下面 ...
- cordova自定义插件开发流程
cordova自定义插件开发:1.cordova安装:npm install -g cordova2.plugman安装:npm install -g plugman3.cordova创建工程:cor ...