一个结构体数组的小问题

以下定义:
typedef struct{
int x;
int y;
}a[10];可以么?它的含义是什么呢?
如果可以,我在main函数里面如何声明这样一个变量?

2个回答

有typedef那么相当于定义了a这样一种类型,含10个元素,每个元素含x,y成员变量
没有typedef则变成了匿名结构体。
使用的话,把a当做类型名就行了:

typedef struct{
    int x;
    int y;
}a[10];

int main()
{
    a b;
    b[1].x = 5; //给b的第二个元素的x成员赋值
}
hijack00
hijack00 正解
接近 4 年之前 回复
xia_ya_bin
赛寞微控 正解!
4 年多之前 回复

这是C的写法,C++应该这么写
struct 结构体名{
int x;
int y;
};
使用
结构体名 a[10];

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问