分配的结构中未分配的数据类型

时间:2016-01-27 16:56:29

标签: c pointers struct

假设我有这样的结构定义:

typedef struct Sample
{
    int s;
}Sample;

我声明了一个像下面的指针变量

Sample *sample = (Sample *)malloc(sizeof(Sample));

现在我的问题是,这个' int s'放置,堆叠或堆?我的意思是是否有动态内存分配用于' int s'也?

2 个答案:

答案 0 :(得分:3)

当您通过structmalloc分配空间时,整个struct(即struct中包含的所有字段)都会在堆上生效。

答案 1 :(得分:2)

当您动态分配内存时,它总是从堆中获取。我想这总结了答案