我试图在我的程序退出之前释放我的哈希表使用的内存,但是我收到了这个错误:
anagram(14510) malloc: *** error for object 0x100103be0: pointer being freed was not allocated
以下是我用来释放表的代码:
for(temp=0; temp<NHASH; temp++){
sp=statetab[temp];
while (sp!=NULL) {
test=sp;
sp=sp->next;
free(test->word);
free(test);
}
}
我不确定为什么会这样,因为它确实正确地释放了这个词。有任何想法吗?