Re[5]: invalid fastbin entry (free):
От: watchmaker  
Дата: 17.04.14 19:54
Оценка: +1
Здравствуйте, Ovoshlook, Вы писали:


O>map.name=(char **)malloc(sizeof(char *)*j+1);

O>Так я выделяю для конкретного элемента массива. То есть не для количества строк в этом массиве, а для уже конкретной строки.
Хорошо, допустим ты так выделяешь память для конкретной строки. Тогда объясни, почему ты решил умножить j на sizeof(char*)? И почему у тебя тип результата является не указателем на строку, а указателем на массив указателей? И почему ты вообще присваиваешь результат переменной map.name?

O>Ну как же не выделял если я ее тем же самым realloc выделяю для записи этой строки?

Такая ошибка называется buffer overflow. Ну то есть она бы так называлась, если бы в твоей программы был смысл :) На самом деле, как уже повторно заметили, в коде безнадёжно перепутаны указатели на строки и массивы указателей.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.