zoukankan      html  css  js  c++  java
  • c++无关类型指针的强制转换原理的分析和尝试

    因最近看到大量的c类型指针强制转换,联系到c++的reinterpret_cast强制转换符,故总结一下。

    先上图 

     由图中可以看出,先声明了一个结构体t与一个含有三个元素的数组num,接着声明一个指向结构体变量t的一个指针p。

    接着使用reinterpret_cast强制转换符将数组首地址赋值给指针p,其实质为虽然声明的是结构体的指针,但是已经指向了数组,

    当使用该指针调用结构体对象里的成员时,按照成员变量所占的长度从p当前所指的位置(即数组的起始位置)开始取值。

    拓展,无论是什么指针只会指向一个地址,所以不同指针可以强制赋值(无关类型),当使用该指针时,即从所指的地方开始取值。

  • 相关阅读:
    一:字符串中匹配中文
    flask+gevent的异步框架
    linux常见的操作指令
    Markdown语法
    Git常用操作
    Vim
    IDEA使用汇总
    Maven基本使用汇总
    Zookeeper问题汇总
    编程最佳实践
  • 原文地址:https://www.cnblogs.com/socks/p/11461156.html
Copyright © 2011-2022 走看看