【发布时间】:2015-01-21 10:44:57
【问题描述】:
如果我使用 void 声明任何变量,它会给出错误但 sizeof(void) 是 1。
这是什么原因?
void var; // it gives error
printf("sizeof(void) = %d", sizeof(void)); //prints 1
【问题讨论】:
-
可能只是 stackoverflow.com/questions/6884061/… 的副本——tl,dr 是“C 中没有这样的东西”。
-
我不明白这个问题。给出什么错误?问题是
void类型的变量无法声明还是sizeof(void)的计算结果为1? -
如果您稍微努力一下正确地格式化它,那实际上会是一个很好的问题。
-
为什么需要
void变量?如果要保留内存并将其用于不同的数据类型,请使用相应的成员定义union。void用于函数返回值(缺失)或抽象指针。
标签: c type-conversion