结构体什么时候分配空间
声明结构体时不分配空间如
struct Library
{
...
};
那请问定义结构体变量时
struct Library *book;
这时候是不是就分配了了呢 是在栈上吗(还是指针的四个字节吗);
book=malloc(sizeof(struct Library));
这时候 把堆上开辟的空间(struct Library类型)的首地址赋给book
大佬们 我理解的对吗{:5_104:} book(指针)的空间在栈上指向的内容(结构体空间)在堆上 有人吗 嘛 你理解的是对的, 定义指针时只有4字节, 并没有实体, malloc 开辟一块空间, 空间大小等于结构体大小.
页:
[1]