c - GCC 在运行时确定 void* 的类型

标签 c gcc

我正在开发一个使用 void* 保存数据的通用容器,我知道在 C 中无法在运行时确定 void* 的类型。我想知道是否可以这样做使用 gcc 扩展或任何其他技巧?我只需要确定我的类型和任何其他类型,我的一个函数需要确定它是否传递给我的容器或任何其他类型,如果它是一个容器,则做其他事情什么都不做。

最佳答案

处理此问题的一种方法是为函数添加一个附加参数。另一种方法是将您的 void * 封装在一个结构中,该结构会带来一些类型数据。编译器很可能无法在此处为您提供帮助。

关于c - GCC 在运行时确定 void* 的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4972262/

相关文章:

c - fscanf 具有 double 和字符的文件

c++ - Mac 库链接

c - 多次声明全局变量时 GCC 没有警告或错误

c - 可变函数的问题

c - 如果只有一次迭代,gcc 优化会删除 for 循环吗?

c++ - 基于 dlopen 的应用程序第二次运行不同(错误)

c - STM32 HAL SPI 中断处理

c++ - 与 ‘operator<<’ 不匹配

c - socket编程报错10054

无法获取要在 c 中打印的数组