Существует структура в моей программеПрограмма получила сигнал SIGABRT, Отменено
struct List
{
int data;
List *next;
};
и функция добавления элемента в конец списка:
void addL(List* &tail, int dat)
{
if (tail==NULL)
{
tail = new List;
tail->data = dat;
tail->next=NULL;
}
else
{
tail->next = new List;
tail = tail->next;
tail->data = dat;
tail->next = NULL;
}
}
GDB говорит о проблеме
terminate called after throwing an instance of 'St9bad_alloc'
what(): std::bad_alloc
Program received signal SIGABRT, Aborted.
0xb7fdd424 in __kernel_vsyscall()
в строке
tail->next = new List;
Я попытался сделать еще одну переменную типа List так:
List* add;
add = new List;
но получил ту же проблему, на второй линии.
Как правильно переписать? И нужно ли здесь вставлять функцию, которая вызывает addL? Извините, если этот вопрос уже был задан, я не мог понять, просматривая их.
Мы понятия не имеем, что вы делаете неправильно. Где ваш [тестовый файл] (http://sscce.org)? –