Я включил MALLOC_CHECK_
установив его на 1 (пробовал также с 2 и 3) Но я не вижу, чтобы он сообщал о каких-либо проблемах со следующей программой c ++:
int n = atoi(argv[1]);
std::cout<<"n = "<<n<<std::endl;
char *buf = new char[n];
for (int i = 0;i < n*n; i++)
{
buf++;
*buf = 'x';
}std::cout<<"done"<<std::endl;
Я что-то здесь упускаю?
Попробуйте вызвать «удалить» в конце. Для меня gcc начал отмечать ошибки только тогда, когда в конце был вызов «free». Может быть, деталь реализации.
Других решений пока нет …