考虑以下定义:
struct
{
int x;
int y;
} point;
void main()
{
...
}
你是在声明“anonymous struct”类型的变量“point”,有没有办法在struct定义之外声明另一个相同类型的变量(可能在main函数中)?
答案 0 :(得分:2)
不,没有,至少没有标准C.如果你想使用这个类型,你必须给它一个名字。
答案 1 :(得分:2)
在标准C中?不,你做不到。但是有编译器扩展:
typeof(point) myPoint;
例如,在clang和GCC中,。
编辑说明:main()
应该返回int
。
答案 2 :(得分:0)