草庐IT

DynApiArg

全部标签

c - 在参数 typedef 更改时重建动态库

假设,我有一个C结构,DynApiArg_t。typedefstructDynApiArg_s{uint32_tm1;...uint32_tmx;}DynApiArg_t;这个结构的指针作为参数传递给函数sayvoidDynLibApi(DynApiArg_t*arg){arg->m1=0;another_fn_in_the_lib(arg->mold);/*Maycrashhere.(1)*/}存在于动态库libdyn.so中。此API通过dlopen/dlsym调用过程从可执行文件调用。如果此动态库更新到版本2,其中DynApiArg_t现在有新成员,比如m2,如下所示:typed

c - 在参数 typedef 更改时重建动态库

假设,我有一个C结构,DynApiArg_t。typedefstructDynApiArg_s{uint32_tm1;...uint32_tmx;}DynApiArg_t;这个结构的指针作为参数传递给函数sayvoidDynLibApi(DynApiArg_t*arg){arg->m1=0;another_fn_in_the_lib(arg->mold);/*Maycrashhere.(1)*/}存在于动态库libdyn.so中。此API通过dlopen/dlsym调用过程从可执行文件调用。如果此动态库更新到版本2,其中DynApiArg_t现在有新成员,比如m2,如下所示:typed