c - 既然void是空类型,为什么void*是可以指向任何类型对象的指针类型呢?

标签 c

在 C 中,void 是没有任何值的类型,即空类型。

按照void的含义,void*应该是一个没有指向任何东西的指针,而相反,void*实际上是一个指针类型可以指向任何类型的对象。

我在这里误解了什么吗?

最佳答案

您可以将 void * 视为“指向我们不知道其类型的对象的指针”,而不是“指向任何类型的对象的指针”。它基本上是一个没有任何与之关联的类型信息的指针,并且 void 可以表示缺少类型。

关于c - 既然void是空类型,为什么void*是可以指向任何类型对象的指针类型呢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45846945/

相关文章:

c - 8 位机器上 int 的大小

c - 如何使用C加密文本文件?

c - C 中的空初始化会自动 malloc 吗?

c - 最大线程数

c - 从 "Address of a function"开始的字节中有什么?如何知道要考虑多少字节?

c++ - 引用如何出现在可从 C 代码调用的函数的签名中?

c - 释放 C 中结构的内存数组

c - 为什么核心配置文件不起作用?

c 函数和多个值返回

调用约定错误 - C