定义了一个结构体,结构体有个成员变量是指针类型,而这个变量有是结构体,请问怎么对这个指针初始化?
4个回答
展开全部
struct A
{
int a;
struct B *b;
}
sturct B
{
int x;
}
struct A *sta = NULL;
sta = (struct A *)malloc(sizeof(struct A));
memset(sta, 0, sizeof(struct A));
sta->b = (struct B*)malloc(sizeof(struct B));
memset(sta->b, 0, sizeof(struct B));
sta初始化完成
{
int a;
struct B *b;
}
sturct B
{
int x;
}
struct A *sta = NULL;
sta = (struct A *)malloc(sizeof(struct A));
memset(sta, 0, sizeof(struct A));
sta->b = (struct B*)malloc(sizeof(struct B));
memset(sta->b, 0, sizeof(struct B));
sta初始化完成
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
例如有a,b两个结构体,a中有b
在main中需要先初始化个b,完成b之后,然后调用a.**=b,这样就可以完成了! 如果直接调用a的话,有可能溢出……!
在main中需要先初始化个b,完成b之后,然后调用a.**=b,这样就可以完成了! 如果直接调用a的话,有可能溢出……!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没赋具体值时都给NULL就好
struct A *a = (struct A *)malloc(sizeof(struct A ));
memset(a,0,sizeof(struct A ));
struct A *a = (struct A *)malloc(sizeof(struct A ));
memset(a,0,sizeof(struct A ));
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
struct A{
int x;
}
struct B{
int y
A *z;
}b={2,NULL};
int x;
}
struct B{
int y
A *z;
}b={2,NULL};
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询