怎么初始化结构体指针里面的结构体指针?

qq_36513061 2017-01-22 03:30:37
#include <stdio.h>
#include <stdlib.h>

struct A
{
int a;
};

struct B
{
int b;
};

struct C
{
struct A aaa;
struct B bbb;
};

int main ()
{
struct A *paa = (struct A *)malloc(sizeof(struct A));
struct B *pbb = (struct B *)malloc(sizeof(struct B));
struct C *pcc = (struct C *)malloc(sizeof(struct C));


return 0;
...全文
821 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Potato_Lyy 2017-01-23
  • 打赏
  • 举报
回复
在楼主分配一个字节大小为sizeof(struct A)之后 *paa只是一个指向分配后的内存块的结构体指针 要是想楼主标题所说 初始化结构体指针里面的结构体指针 似乎需要用到二级指针的把
小灸舞 版主 2017-01-23
  • 打赏
  • 举报
回复
自己写个initial函数?
  • 打赏
  • 举报
回复
c++的话,可以通过创建一个结构体的构造函数在主函数中调用然后就能初始化了。
yes-hyh 2017-01-22
  • 打赏
  • 举报
回复
直接memset(paa, 0, sizeof(struct A))
自信男孩 2017-01-22
  • 打赏
  • 举报
回复
指针初始话一般初始化为NULL

69,364

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧