title image


Smiley Meinste sowas?


#include <stdio.h>

#include <string.h>

#include <stdlib.h>



struct list {

char info[80]; // Informationsteil

struct list *next; // Zeiger

};



int l_insert(struct list **ppl, const char *name)

{

struct list *pn, *pl=*ppl;



/* Korrekte Stelle zum Einfuegen suchen */

for(pl=*ppl; pl && strcmp(pl->info, name)<0; pl=pl->next) ppl=&pl->next;



/* Element erzeugen */

pn=malloc(sizeof(struct list));

if(pn==NULL) {

perror("malloc");

return -1;

}

strcpy(pn->info, name);



/* und einklinken */

pn->next=*ppl;

*ppl=pn;



return 0;

}



void l_delete(struct list **ppl)

{

struct list *pl, *pln;



for(pl=*ppl; pl; pl=pln) {

pln=pl->next;

free(pl);

}

*ppl=NULL;

}



int main(void)

{

const char **pps;

struct list *pl, *head = NULL;

/* Beispieldaten */

const char *names[] = {

"Hans", "Alfons", "Ernie", "Bert", "Uli", "Peter",

"Sylvia", "Anja", "Loretta", "Larissa", "Susanne", NULL

};



/* Sortierte Liste aufbauen */

for(pps=names; *pps; pps+=1) l_insert(&head, *pps);



/* Liste ausgeben */

for(pl=head; pl; pl=pl->next) printf("%s\n", pl->info);



/* Liste wieder freigeben */

l_delete(&head);



system("PAUSE");

return 0;

}



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: