I的for循环呼唤从LUA crashs℃,同时重新分配
matr=realloc(matr, newmax*sizeof(matr*));
for (i=0; i<newmax; i++){
matr[i]=realloc(matr[i], newmax*sizeof(int));
}
MATR内有一个疯狂的误差是一个多维阵列:整数** MATR。我需要调整列和行的大小。第一行调整列大小,for循环调整每行的大小。它在c中工作正常。现在我正在为卢阿的图书馆工作,并在这里崩溃。 compilin'也很好。但呼吁卢阿崩溃
lua: malloc.c:3552: mremap_chunk: Assertion `((size + offset) & (mp_.pagesize-1)) == 0' failed.
我没有该死的主意,因为它工作正常使用它在c。
存储Lua解释内部指针“MATR”?也许解释器在阵列被重新分配之后在某处使用旧指针。 – Rudi 2010-05-25 10:58:26
mtr是c中结构的一部分。并且该结构表示为lua的userdata。 – mkind 2010-05-25 11:16:07
这与Lua无关。 – lhf 2010-05-25 11:32:34