Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- oid add(lista **poz, kontakt nowa)
- {
- kontakt contact1;
- lista *poz = (lista*)calloc(1, sizeof(lista));
- if (poz == NULL)
- return;
- if ((*poz) == NULL)
- (*poz) = (lista*)malloc(sizeof(lista));
- *poz = (*poz)->next;
- else
- {
- ((*poz)->next) = (lista*)malloc(sizeof(lista));
- if ((*poz)->next == NULL)
- return;
- }
- poz->dane = nowa;
- poz->next = *poz;
- if (*poz != NULL)
- {
- if ((*poz)->prev != NULL) (*poz)->prev->dane = nowa;
- poz->prev = (*poz)->prev;
- (*poz)->prev = poz;
- }
- *poz = poz;
- printf("Podaj Imie: ");
- scanf("%s", contact1.imie);
- printf("Podaj Nazwisko: ");
- scanf("%s", contact1.nazwisko);
- printf("Podaj numer: ");
- scanf("%s", contact1.numer);
- printf("Podaj grupe: ");
- scanf("%s", contact1.grupa);
- printf("\n");
- }
- // funkcja usuwajaca kontakt
- // poz - podwojny wskaznik na element listy
- void usun(lista **poz)
- {
- lista *poz;
- if (*poz == NULL) return;
- if ((*poz)->next == NULL && (*poz)->prev == NULL)
- {
- *poz = NULL;
- return;
- }
- poz = *poz;
- if ((*poz)->next != NULL)
- (*poz)->next->prev = (*poz)->prev;
- if ((*poz)->prev != NULL)
- (*poz)->prev->next = (*poz)->next;
- if ((*poz)->next != NULL)
- *poz = (*poz)->next;
- else if ((*poz)->prev != NULL)
- *poz = (*poz)->prev;
- free(poz);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement