结构体中的结构体用malloc么
答案:2 悬赏:20 手机版
解决时间 2021-03-14 23:14
- 提问者网友:姑娘长的好罪过
- 2021-03-14 18:12
结构体中的结构体用malloc么
最佳答案
- 五星知识达人网友:封刀令
- 2021-03-14 18:39
可以用 也可以不用 取决于定义
如果定义的 结构体中的结构体,本身就是变量形式 那么不需要
如果定义的 只是一个结构体指针 那么一般是需要malloc的。
比如
struct A
{
struct B m;//这个不需要
struct C *np;//这个需要。
}
如果定义的 结构体中的结构体,本身就是变量形式 那么不需要
如果定义的 只是一个结构体指针 那么一般是需要malloc的。
比如
struct A
{
struct B m;//这个不需要
struct C *np;//这个需要。
}
全部回答
- 1楼网友:罪歌
- 2021-03-14 19:04
malloc申请的是堆空间,把它的地址交给p,也就是p指向了这个空间,分配的时侯你会用sizeof(struct l)指定大小,使用时你会(struct l*)强转一下再给p,这样就可通过p访问这段空间了。
p->等价(*p). ;在对上分配的空间,那个变量名是没有的,只能用指针p给它赋值和访问。
用完得用free()把堆空间释放。
有问题可以追问
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯