维基百科以及我发现的其他来源都将C的void
类型列为单位类型,而不是空类型。我觉得这很混乱,因为在我看来,它void
更适合于空/底类型的定义。
void
据我所知,没有价值观存在。- 返回类型为void的函数指定该函数不返回任何内容,因此只能执行某些副作用。
- 类型的指针
void*
是所有其他指针类型的子类型。同样,void*
在C中进行来回转换是隐式的。
我不确定最后一点是否可以作为void
空类型的参数,void*
或多或少是与无关的特例void
。
另一方面,void
它本身不是所有其他类型的子类型,据我所知,这是将类型作为底部类型的要求。