我有以下结构:
struct postsTempo {
int ano;
ShortData dias[373];
struct postsTempo* prox;
};
当我malloc(sizeof(struct postsTempo))
我分配了我需要或做的所有内容时,我还需要malloc
ShortData
数组吗?我无法向该阵列添加任何内容......
答案 0 :(得分:3)
每当使用malloc()
分配内存时,它会为结构内声明的所有变量创建内存空间。
因此不需要为ShortData进一步使用malloc。
答案 1 :(得分:0)
是的,您不需要malloc ShortData数组,因为这是在堆栈上创建的本地数组,并且具有自动存储持续时间。 看看:Static array vs. dynamic array in C++