我正在尝试在其中创建一个包含其他结构的结构。
struct bullet{
char bullet_sprite[100];
int pos_x;
int pos_y;
int ace_x;
int tag;
};
struct bullets_onscreen{
struct bullet v[2];
struct bullet a[2];
};
我收到此错误:
错误:数组类型具有不完整的元素类型
这可行吗?
示例代码:
//Calling functions
struct bullets_onscreen[2] //public
struct bullet bala[1];
init_bullet(&bala,_player);
set_bullet_on_screen(&bala);
void set_bullet_on_screen(struct bullet *_bullet){
array_bullet[1] = _bullet;
}
void init_bullet(struct bullet *_bullet, struct player *_player){
//inits all bullet components
}
答案 0 :(得分:3)
写完你的代码就好了。据推测,在实际代码中,您已经颠倒了两个结构定义的顺序。此代码会生成您报告的错误:
struct bullets_onscreen{
struct bullet v[2];
struct bullet a[2];
};
struct bullet{
char bullet_sprite[100];
int pos_x;
int pos_y;
int ace_x;
int tag;
};
按照您在问题中所做的顺序定义结构,代码将编译。