Я новичок в C ++ и мне нужна помощь в решении проблемы повреждения кучи на 64-битной. Ниже приведен код, который работает на 32-разрядных, но не на 64-разрядных.
#define a 3
#define b 4
char *c[b-a+1];
//some allocation code to char *c[b-a+1]
//destructor code that fails
for (x = a; x <= b; x++) {
if c([x-a]){
char * y =(char*)c[x-a];
free(y);
c[x-a]=null;
}
}
Обратите внимание, что это не мой код, это то, что я унаследовал и должен исправить.
Любая помощь приветствуется.
Спасибо