test.c的
int main () {
void a;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我使用gcc编译,但它给了我一个错误:
错误:变量或字段'a'声明为void
从我在这里读到的,我以为我可以毫无问题地声明void变量.
如您的链接所述:
一个本身声明为void的变量(例如上面的my_variable)是无用的; 它不能赋值,不能转换为其他类型,实际上不能以任何方式使用.
这意味着虽然语法正确,但void声明对任何东西都没用,这就是GCC认为它是错误的原因.即使它会编译,你也无法对变量做任何事情,所以我猜你的问题只与测试这种行为有关.
实际上void,当我们讨论指针(void*)时,它很有用,因为它允许您在不指定类型的情况下声明通用指针.
| 归档时间: |
|
| 查看次数: |
5960 次 |
| 最近记录: |