gpt4 book ai didi

c - 如何通过pos访问未知结构的元素?

转载 作者:太空宇宙 更新时间:2023-11-04 04:32:54 27 4
gpt4 key购买 nike

在主程序中,我有许多不同的结构和关联类型,我调用了一个保存在单独的 dll 中的外部函数:

typedef struct{int a; int b; int c; int d;} t1;
typedef struct{int x; int y; double z; double w;} t2;
// ...
int ret;
char* s="blah";
t1* parms1;
t2* parms2;
ret=MyFunc(s, t1);
//...
ret=MyFunc(s, t2);

在dll中,上述类型既没有定义也没有已知,我有如下函数:

__declspec(dllexport) int MyFunc(char* pstmt, void* pRS){
//--
}

我的问题是,有没有办法访问(即读取/设置)dll 中传递的结构元素?比如,基于位置的访问或类似的东西?例如,我希望能够编写如下内容:

pRS->*<either a or x>*=*<something>*

最佳答案

您必须像您的情况一样强制转换 (void*) 到任何想要的结构:

((t1*)pRS)->a=0;

((t2*)pRS)->x=0;

关于c - 如何通过pos访问未知结构的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33937183/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com