c++无关类型指针的强制转换原理的分析和尝试
2024-09-01 17:43:03
因最近看到大量的c类型指针强制转换,联系到c++的reinterpret_cast强制转换符,故总结一下。
先上图
由图中可以看出,先声明了一个结构体t与一个含有三个元素的数组num,接着声明一个指向结构体变量t的一个指针p。
接着使用reinterpret_cast强制转换符将数组首地址赋值给指针p,其实质为虽然声明的是结构体的指针,但是已经指向了数组,
当使用该指针调用结构体对象里的成员时,按照成员变量所占的长度从p当前所指的位置(即数组的起始位置)开始取值。
拓展,无论是什么指针只会指向一个地址,所以不同指针可以强制赋值(无关类型),当使用该指针时,即从所指的地方开始取值。
最新文章
- 51nod 1622 集合对[算法马拉松19 C]
- 使用 CXF 做 webservice 简单例子
- mac基本用法
- 推荐cms
- BF-9000 BMC任务关键型应急通信系统
- Android项目实战(五十四):zxing 生成二维码图片去除白色内边距的解决方案
- libcurl.a 跨平台
- Extracted SQL state class 'S1' from value 'S1009'
- 人机猜拳游戏Java
- multi-head attention
- 【IntelliJ 】IntelliJ IDEA 2017激活码
- #pragma warning(disable 4786)
- [Spark Core] Spark Shell 实现 Word Count
- 20155235 《网络攻防》 实验八 Web基础
- Java局部打印的问题
- java 中的this
- HDU 1540 Tunnel Warfare
- 【JS】怎样同一时候处理多个window.onload事件
- 使用docker 部署graylog集群
- 数据结构:广义表的实现(Java)