【发布时间】:2021-11-28 07:08:18
【问题描述】:
我在重新分配内存时遇到了这个问题。我创建了一个程序,您可以在其中放置有关不同杂货的信息。一个小规模的购物清单。我正在尝试为列表中的每个新项目扩展和缩小项目列表。对于第一项,它在分配和释放旧的 NULL 内存时没有任何问题。但是当添加更多项目并同时尝试释放分配的内存时,程序会在第 144 行触发断点。这是我得到的消息。 “wntdll.pdb 包含查找模块 ntdll.dll 源所需的调试信息”我做错了什么?
这是我为此目的而创建的函数。
void addSpace(struct GroceryItem** pitemList, int listLength)
{
int add = listLength + 1;
struct GroceryItem * temp;
temp = NULL;
do {
temp = (struct GroceryItem*)realloc(*pitemList, add * sizeof(struct GroceryItem));
} while (temp == NULL);
if(listLength!=0)
free(*pitemList);
_CrtDumpMemoryLeaks();//Cheking for memory leaks
*pitemList = temp;
return;
}
我对编程很陌生,所以如果在理解我的问题时遇到任何问题,请报告,我会尝试更具体。
【问题讨论】: