【发布时间】:2016-06-06 05:28:04
【问题描述】:
我构建了一个函数,我试图用它来为我的结构动态分配内存,就像这样。只是似乎无法让它工作
typedef struct My_Struct
{
char **array
}MyStruct
MyStruct * createMyStruct(int length)
{
MyStruct->array = malloc(sizeof(char *) * (length + 1));
}
int main(void)
{
MyStruct *new1 = createMyStruct(10);
return 0;
}
【问题讨论】:
-
你不能使用
MyStruct->array。MyStruct是类型名,不是变量名。 -
你不能“分配你的结构”,但你可以分配你的结构的实例。
标签: c struct dynamic-memory-allocation