我对指针有疑问。我已经阅读了 30 多篇关于这个主题的帖子,但没有一个符合我的设置。这是我正在尝试做的事情:
void doSomething(myStruct **myList)
{
resizeMyList(myList,5);
myList[0] = '42';
myList[1] = '43'; // ERRORS OUT OF MEMORY
}
void resizeMyList(myStruct **theArray,int size)
{
myStruct *new_ptr = realloc(*theArray,(size * sizeof myStruct));
if(new_ptr)
*theArray = new_ptr;
else
printf("died");
}
在我的调整大小函数执行后,myList 无法获取新指针。我做错了什么?
最佳答案
你会
myList[0] = ...
但是myList
是一个双指针所以它应该是
(*myList)[0] = ...
此外,您尝试将多字 rune 字分配给结构。
关于C - 创建子函数以重新分配数组大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19974249/