【发布时间】:2022-11-28 23:27:10
【问题描述】:
所以我试图为结构中的字符串数组分配内存: 这是结构:
typedef struct{
int aisleNumber;
char **aisleProducts;
}Aisle;
这就是我分配内存的方式:
Aisle.aisleProducts = (aisleProducts*)malloc( sizeof(aisleProducts) );
现在,我只需要数组中一个字符串的空间,因此我不乘以大小。仍然不起作用,我不知道为什么......
任何帮助,将不胜感激。
【问题讨论】:
-
char **aisleProducts;是一个指针指针,但您正试图为其分配一个指针(aisleProducts*)malloc( sizeof(aisleProducts) )。类型不匹配。您还需要创建Aisle结构的实例...Aisle aisle;然后使用它。 -
@Nox5692 您尝试分配的字符数组的大小是多少?
-
不确定为什么人们投票关闭不清楚。很清楚为什么 malloc 调用不起作用。如果你想把它当作无聊的打字错误来关闭,我也许可以买那个,但不要因为不清楚而关闭。
标签: arrays c dynamic-memory-allocation