这是一个非常基本的问题。我只想知道void类型指针的内存是什么。
任何帮助都非常适合。谢谢!
答案 0 :(得分:7)
void
指针只是一个在内存中提供地址的值。没有进一步的信息,无法确定void
指针实际指向的内容。
至于void
指针所占用的内存中,32位架构上的32位值和64位架构上的64位值(依此类推。)
对此值的解释在很大程度上取决于底层架构及其如何实现内存寻址。
答案 1 :(得分:0)
指针是一个内存地址,所以无论它是一个void指针还是一个Object的指针都是一样的......
答案 2 :(得分:0)
void
是一种没有值的类型。
因此,如果您有void *foo
,则C不允许您阅读*foo
,更不用说为其分配一些值了。
因此,您的问题的答案是:您无法找到void
指针所指向的值。您必须将void指针强制转换为其他类型,并且新指针指向的地址处的值将根据其类型进行解释。
答案 3 :(得分:0)
实际上,它也是一个指针,因此大小应该等于普通指针。