【发布时间】:2011-09-28 08:30:42
【问题描述】:
我正在编写一个解释器,我希望能够将函数返回的任何值存储到 void 指针中。我将整数和各种指针存储为 void 指针没有问题,但是在尝试将 double 类型转换为 void 指针时出现错误。我知道双精度的存储方式与位级别的整数和指针不同,但我不明白为什么我不能将我想要的任何位放入指针中(假设它已分配足够的内存)然后再将它们取出,将它们转换为双精度。
是否可以使用我不知道的语法将 double 转换为 void 指针,或者我误解了 void 指针的工作原理?
【问题讨论】:
-
您是否考虑过使用
union代替? -
听起来你做错了什么。请看大卫的回答。
-
检查我在另一个问题中的答案stackoverflow.com/questions/6539023/…
标签: c void-pointers