c/c++语言开发共享将void指针强制转换为struct

我开始对C感到舒服,然后遇到了铸造。 如果我在* .h文件中定义了以下内容

struct data { int value; char *label; }; 

这是另一个* .h文件

 # define TYPE void* 

如何将void指针强制转换为struct,以便我可以使用传递给函数的变量“TYPE val”? 例如,如果我想利用TYPE val指向的值,我该如何转换它以便我可以将该值传递给另一个函数?

     (struct data*)pointer 

    将指向void的指针转换为指向struct data的指针。

    可以在下面完成对结构的类型转换指针

     void *vptr; typedef struct data { /* members */ }tdata; 

    为此,我们可以对结构进行类型转换,假设您想将此vptr作为结构变量发送到某个函数

    然后

     void function (tdata *); main () { /* here is your function which needs structure pointer type casting void pointer to struct */ function((tdata *) vptr); } 

    注意:我们可以将void指针强制转换为任何类型,这是void指针的主要目的。

    需要了解更多c/c++开发分享将void指针强制转换为struct,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!

      以上就是c/c++开发分享将void指针强制转换为struct相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/979831.html

      (0)
      上一篇 2021年12月13日
      下一篇 2021年12月13日

      精彩推荐