【发布时间】:2011-04-03 08:17:33
【问题描述】:
我在旧的 C 代码中看到了很多以下内容:
type_t *x = (type_t *) malloc(...);
既然是void *,那么转换从malloc() 返回的指针有什么意义?是不是因为旧的 C 编译器不支持 void 指针,而 malloc() 过去常常返回 char *?
【问题讨论】:
-
C 允许这样做,而 C++ 不允许。但是,这并不一定意味着您应该在使用 C 编程时转换
void*。C 不是 C++。 -
我在这里问了一个类似的问题:stackoverflow.com/questions/605845/…
标签: c pointers void-pointers