Revision: 60788
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 12, 2012 09:31 by dmikulin
Initial Code
typedef lis *elem;
typedef lis list;
struct zivotinje{
int sifra;
char naziv[30];
char vrsta[30];
float cijena;
struct{
int dan, mj, god;
}datum;
};
struct lis {
zivotinje value;
lis *Next;
};
void DeleteAllL(list* L){
while(L->Next){
elem toDelete = L->Next;
if(L->Next){
L->Next = toDelete->Next;
delete toDelete;
}
}
delete L;
L = NULL;
}
list* InitL(list* L){
if(L!=NULL)
DeleteAllL(L);
else{
list *newList = new list;
newList->Next = NULL;
return newList;
}
return NULL;
}
elem FirstL(list* L){
return L;
}
elem EndL(list* L){
elem trenutni = L;
while(trenutni->Next){
trenutni = trenutni->Next;
}
return trenutni;
}
elem NextL(elem p, list *L){
if(p!=NULL){
if(p==EndL(L)){
return NULL;
}
return p->Next;
}
return EndL(L);
}
elem PreviousL(elem p, list *L){
elem trenutni = L;
while(trenutni){
if(trenutni->Next == p )
return trenutni;
trenutni = trenutni->Next;
}
return NULL;
}
elem LocateL(zivotinje el, list* L){
elem trenutni = L;
while(trenutni->Next){
if(trenutni->Next->value.sifra == el.sifra)
return trenutni;
trenutni = trenutni->Next;
}
return NULL;
}
void InsertL(zivotinje el, elem p, list* L){
if(p==NULL)
return;
else{
elem novi = new lis;
novi->value = el;
novi->Next = p->Next;
p->Next = novi;
}
}
void DeleteL(elem p, list* L){
elem toDelete = p->Next;
if(toDelete){
p->Next = toDelete->Next;
delete toDelete;
}
}
zivotinje RetrieveL(elem p, list* L){
return p->Next->value;
}
Initial URL
Initial Description
Zaglavlje pomoću pokazivaÄa
Initial Title
lista_pokazivac.h
Initial Tags
Initial Language
C++