struct person
{
int age;
char name[100];
struct person *next;
};
void delfirst(struct person **p)// For deleting the beginning
{
struct person *tmp,*m;
m = (*p);
tmp = (*p)->next;
free(m);
return;
}
void delend(struct person **p)// For deleting the end
{
struct person *tmp,*m;
tmp=*p;
while(tmp->next!=NULL)
{
tmp=tmp->next;
}
m->next=tmp;
free(tmp);
m->next = NULL;
return;
}
Я ищу две отдельные функции для удаления первого и последнего элементов связанного списка. Вот что я попробовал. Что ты предлагаешь? Особенно удаление первого так проблематично для меня.