指向结构体的指针和指向结构体指针的指针
例如,struct T *ptr;是指向一个结构体的指针,也可以当做一个结构体数组来用。 可以把结构体当做 int 来看,int* 类型即可以指向一个整数,也可以指向数组。
struct T ** ptr, 说白了 就是一个结构体指针的数组,数组内都是指针,还要分配内存。
1,结构体指针用法一:
struSysInfo *SysInfo;
SysInfo = (struSysInfo*)malloc(sizeof(struSysInfo));
SysInfo->VERSION = (char *)malloc(sizeof(char)*10);//VERSION 是结构体中的一个char指针
2,结构体指针用法二:
struParamModel *pParamModel;
ParaModelNum = 20;
pParamModel = (struParamModel*)malloc(sizeof(struParamModel)*ParaModelNum);
for(i = 0;i < ParaModelNum;i++)
pParamModel[i].VERSION = (char *)malloc(sizeof(char)*10);//VERSION 是结构体中的一个char指针
3,指向结构体指针的指针用法一:
BlockCfg **pBlockCfg;
wBlockNum = 100;
devp->pBlockCfg = (BlockCfg**)malloc(sizeof(BlockCfg*)*wBlockNum);
for(b = 0;b < wBlockNum ; b++)
{
devp->pBlockCfg[b] = (BlockCfg*)malloc(sizeof(BlockCfg));
memset(devp->pBlockCfg[j]->BlockType, '\0', 32);//BlockType是结构体中的一个占32字节空间的char型数组
}
4,指向结构体指针的指针用法二:
FrozenTpyes **pFrozeTypes;//一维对应di2pos,二维对应di0pos
wDI2Max = 20;
devp->pFrozeTypes = (FrozenTpyes**)malloc(sizeof(FrozenTpyes*)*wDI2Max);
for(a = 0;a < wDI2Max;a++)
{
wFrozeTimes[a] = a+10;
devp->pFrozeTypes[a] = (FrozenTpyes*)malloc(sizeof(FrozenTpyes)*wFrozeTimes[a]);
for(b = 0; b < wFrozeTimes[a];b++)//次数
{
memset(devp->pFrozeTypes[a][b].chFrozTime,0,12);//chFrozTime为结构体中占12字节空间的char型数组
}
}
指向结构体的指针和指向结构体指针的指针相关推荐
- 【精华文】C语言结构体特殊情况分析:结构体指针 / 基本数据类型指针,指向其他结构体
参考链接:Structure pointer pointing to different structure instance 注:可以查看此篇的问题和唯一的回复,那是相对正确的,不要看comment ...
- python 结构体指针_C语言结构体指针(指向结构体的指针)详解
当一个指针变量指向结构体时,我们就称它为C语言结构体指针的定义形式一般为: struct 结构体名 *变量名; 下面是一个定义结构体指针的实例: //结构体 struct stu{ char *nam ...
- C语言结构体指针(指向结构体的指针)详解
当一个指针变量指向结构体时,我们就称它为结构体指针.C语言结构体指针的定义形式一般为: struct 结构体名 *变量名; 下面是一个定义结构体指针的实例: //结构体 struct stu{ cha ...
- 【C/C++】指针的思考与注意:空指针,指针赋值,void*指针,二级指针,结构体指针,指向同一地址的多个指针释放问题
部分参考自:https://blog.csdn.net/u012351051/article/details/96753703 1. 啥是指针 指针是地址,而不是具体的标量值,这是指针的精髓,不管是一 ...
- c语言中定义结构体指针并指向一片内存空间和直接定义一个结构体变量的区别 Node *p=(Node *)malloc(sizeof(Node)); 和 Node p 两个有什么区别??? Node是一
(来自百度解答) Node *p是定义一个Node结构体指针,指针名为p,指向一个Node结构体,并为这个结构体分配了内存空间 该结构体无命名 Node p是定义一个Node结构体,结构体名为p. 追 ...
- 【C 语言】结构体 ( 指针运算与指针内存操作 | 结构体成员偏移量计算 )
文章目录 一.指针运算 与 指针内存操作 二.结构体偏移量计算 一.指针运算 与 指针内存操作 指针变量算术运算 ( 指针可以是任意值 ) : 指针 是一个变量 , 如果对指针进行 算术 / 逻辑 等 ...
- c语言学习笔记【结构体02】结构体指针变量与结构体变量的函数参数,C语言学习笔记结构体02结构体指针变量与结构体变量的函数参数.docx...
C 语言学习笔记[结构体02]结构体指针变量与结构体变量 的函数参数 C 语言学习笔记之结构体指针变量一提指针,那可 是 C 语言的核心了,有多少学子曾拜倒在指针的脚下.单纯的说指针,其实并不难,但是 ...
- C语言:指针的偏移步长、结构体成员的偏移量、嵌套结构体成员的偏移量、结构体的内存对齐
文章目录 1 不同类型指针的偏移步长 2 结构体成员的偏移量 3 嵌套结构体成员的偏移量 4 结构体的内存对齐 4.1 内存对齐的原因与优点 4.2 结构体内存对齐的规则 4.3 结构体嵌套结构体时的 ...
- 【结构体】 结构体引用、结构体数组指针、包含结构的结构体
目录 一.概念.变量的定义 初识结构体 结构体变量的定义.引用结构体类型的初始化 二.结构体的数组 认识结构体数组 初始化结构体数组 三.结构体指针 初识结构体指针 指向结构体数组的指针 结构体作为函 ...
最新文章
- weblogic登录验证被拒绝_使用Kubernetes身份在微服务之间进行身份验证
- Java并发编程:线程池
- 「译」 用 Blazor WebAssembly 实现微前端
- 一个不知名的网站复制来的: java怎样连接到SQL server 2008
- 对项目需求管理的认识和体会
- 对话夏琳·查布利斯:Primer.AI机器学习工程师是怎样炼成的?
- 《基于 DirectX11 的 3D 图形程序设计案例教程》学习一 HelloWorld
- 138企业邮箱pop/imap和smtp服务器地址
- linux系统英语词汇大全,Linux系统管理中基本命令和英语词汇
- android 录像限制时间,视频拍摄能不能限制拍摄时间和微信小视频一样
- gst-rtsp-server搭建与测试
- 基于ZigBee的智能监控系统-上位机代码
- 2021赤峰市地区高考成绩排名查询,2021年赤峰高考状元是谁分数多少分,历年赤峰高考状元名单...
- 部署安装cobbler,实现批量安装CentOS7、Ubuntu17.04、Ubuntu18.04(快捷版)
- Java Comparator使用指南 ---- 看这一篇就够了
- CodeBlocks+wxWidgets
- 龙族幻想服务器维护多长时间,【龙族幻想】12月31日维护公告
- C语言:L1-051 打折 (5 分)
- [CISCN2019 华北赛区 Day1 Web2]ikun
- ### 通达信数据之实时机构持股数据接口
热门文章
- 说说Flink的连接器connector有哪些,怎么用?
- 程序员去外包的后遗症是什么
- Linux创建share共享文件夹
- 南方科技大学计算机系图灵班,【独家】上了大学就自由了,老师管得少! 这所高校:喔?是吗?...
- BlockingQueue实例
- 加多芬科技深度剖析--“什么是移动支付服务商“
- Python GraphQL
- 百度OCR识别图片文字,解决image format error错误
- linux socket 编程
- Linux下Socket编程之TCP原理