全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言中不同类型的结构体的指针间可以强制转换,很自由,也很危险。只要理解了其内部机制,你会发现C是非常灵活的。一.结构体声明如何内存的分布,结构体指针声明结构体的首地址,结构体成员声明该成员在结构体中的偏移地址。 变量的值是以二进制形式存储在内存中的,每个内存字节对应一个内存地址,而内存存储的值本身是没有整型,指针,字符等的区别的,区别的存在是因为我们对它们有不同的解读,param的值就是一个32位值,并且存储在某个内存单元中,通过这个32位值就能找到param所指向的结构的起始地址,通过这个起始地址和各个结构所包含变量离起始地址的偏移对这些变量进行引用,param-bIsDisable只是这种引用更易读的写法,只要param是指向PAINT_PARAM的指针,那么param的值就肯定存在,param存在,偏移量已知,那么param-bIsDisable就肯定存在,只是要记住,param-bIsDisable只是代表了对param一定偏移地址的值。 不是说某个地址有那个结构体你才能引用,即使没有,你也能引用,因为你已经告诉了编译器param变量就是指向一个PAINT_PARAM结构体的变量并且指明了param的值,机器码的眼中是没有数据结构一说的,它只是机械的按照指令的要求从内存地址取值,那刚才的例子来说,peg-x,peg-y的引用无论0x30000000是否存在一个eg结构体都是合法的,如果0x30000000开始的8个字节存在eg结构体,那么引用的就是这个结构体的值,如果这个位置是未定义的值,那么引用的结果就是这8个字节中的未定义值,内存位置总是存在的,而对内存中值的引用就是从这些内存位置对应的内存单元取值。举个例子 :typedef struct_eg int x; int y;eg;int point = 0x30000000;eg *peg = (eg*)point;可以看到point本身只是个整型变量,但是这样的赋值是合法的,peg-x的值是0x30000000开始的四字节,peg-y是0x30000004开始的四字节pMsg-wParam 的值是0x30000000也就是param指向了以0x30000000为首地址的一片内存单元,这片内存单元以 PAINT_PARAM 的方式分布举个例子:typedef struct QueueNodestruct QueueNode * pNext;tQueueNode;typedef struct QMSGtQueueNode Node;tChatSysMsg data;tQMSG;typedef struct ChatSysMsgintConnfd;char Version;char MsgType;charSerialNumber;intMsgLen;charMsgMAX_NUM_STR;tChatSysMsg;它们间的强制转换:tQMSG * pTempMsg;(tQueueN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 19842-2025轨道车辆空调机组
- GB/T 46530-2025营运船舶二氧化碳排放强度等级及评定方法
- GB/T 46441-2025影像材料彩色反射照片臭氧褪色稳定性的试验方法
- 胆囊结石嵌顿的护理
- 雨课堂学堂在线学堂云《财富管理(黑龙江财经学院 )》单元测试考核答案
- 高考化学“3+2”模拟练试卷含答案(七)
- 2026年投资项目管理师之投资建设项目决策考试题库200道含答案【轻巧夺冠】
- 2026航空工业未来机载武器技术协同创新中心校园招聘历年真题汇编附答案解析
- 浙江国企招聘-2025浙江湘旅控股集团有限公司招聘10人历年真题汇编带答案解析
- 2026年度中国石化毕业生招聘历年真题汇编带答案解析
- 国家义务教育质量监测(2025年)中小学生心理健康测试及答案
- 基于电力优化的Boost型有源功率因数校正控制器芯片深度设计与应用研究
- 为进一步加强公司人力资源管理
- 2025广东华南师范大学附属小学招聘教师14人(第二批编制)笔试考试参考题库及答案解析
- 幼儿园开学教职工安全培训课件
- 培训学校消防安全预案
- 老年人70岁以上换证三力测试题答案-驾考题库
- 2026“才聚齐鲁 成就未来”山东黄金集团校园招聘考试笔试备考试题及答案解析
- 全国网络安全行业职业技能大赛(网络安全管理员)考试题及答案
- 2025年锦州辅警协警招聘考试真题(含答案详解)
- 2025疾控检验试题及答案
评论
0/150
提交评论