Void osv (spisoc*&s)
{spisoc*list=s,
//
текущий указатель устанавливается на
вершину
списка
*pr=0;
//
вспомогательный на NULL
while(list)
//
пока не достигнем конца списка
{
pr=list;
//
текущий указатель запоминаем в pr
list=list->next;
//
текущий указатель прикрепляем к следующей
//структуре
списка
delete(pr);
//
предыдущую структуру затираем –
освобождаем
//
память, выделенную структуре
}
s=0;
//
указатель на вершину получает значение
NULL
}
Void main()
{
for(int
i=0;i<3; i++)
dop(s,stm+i);
dop1(s);
cht(s);
poisk1(s,1998);
cout<<"\n\nУдаление:";
ud1(s,1991);
cout<<"\n\nСтруктуры
списка :";
cht1(s);
osv(s);
cht(s);
}
Пример двусвязного линейного
списка: