【发布时间】:2019-05-24 17:18:57
【问题描述】:
在哪种情况下我们应该更喜欢 void 指针而不是 char 指针,反之亦然?
事实上,两者都可以转换为任何数据类型。
【问题讨论】:
-
当您想在模块中隐藏数据结构并为用户提供“只是一个指针”以与您的模块进行交互时,您可以使用
void指针。 -
感谢@PaulOgilvie 的回答,但我也可以使用 char 指针实现相同的功能,那为什么要使用 void 指针呢?
-
这有点像问为什么你会在没有它的情况下“可以通过简单地不分配它来实现相同的功能”时将
const限定符放在某个东西上。但是能够传达含义(对人类读者和编译器)本身就有价值。
标签: c pointers void void-pointers