我见过一个函数,其原型是:
int myfunc(void** ppt)
此函数在 C 文件中调用为 a = myfunc(mystruct **var1);
其中 mystruct 是我们拥有的结构之一的 typedef。
这在 MSVC6.0 中没有任何编译错误,但是当我使用其他一些 C 编译器编译它时,它在调用此函数的位置出现错误并显示错误消息:
mystruct ** 类型的参数与 void ** 类型的参数不兼容
myfunc() 的参数保持为 void** 因为它似乎是一种通用的 malloc 函数,可以使用各种结构变量类型调用以进行内存分配
- C 标准/任何 C 编译器中是否允许有任何类型,例如 void **?
- 我该如何解决?[我尝试将函数调用参数转换为
mystruct**
,但没有成功]
-广告