testprog.c

00001 
00007 #include "dynlist.h"
00008 #include <stdio.h>
00009 #include <string.h>
00010 
00011 #define NUM     30      
00012 typedef struct {
00013         int alpha;
00014         char beta[128];
00015 }data;
00016 
00017 int isbigger(void *first, void *second) {
00018         if( ((data*)first)->alpha > ((data*)second)->alpha )
00019                 return 1;
00020         else
00021                 return 0;
00022 }
00023 
00024 void print_data(dynlist list) {
00025         int i;
00026         data *pdata;
00027 
00028         for(i=0; i<getlen(list); ++i) {
00029                 pdata=getitem(&list, i);
00030                 if(pdata)
00031                         printf("(%3d, %10s)\n", pdata->alpha, pdata->beta);
00032         }
00033 }
00034 
00035 void print_array(data *array, int len) {
00036         int i;
00037 
00038         for(i=0; i<len; ++i)
00039                 printf("(%3d, %10s)\n", array[i].alpha, array[i].beta);
00040 }
00041 
00042 int main() {
00043         data *temp;
00044         int i;
00045         dynlist(list, data);
00046 
00047         temp=newitem(&list);
00048         temp->alpha=25;
00049         sprintf(temp->beta, "Carlo");
00050 
00051         temp=newitem(&list);
00052         temp->alpha=23;
00053         sprintf(temp->beta, "Marco");
00054 
00055         temp=newitem(&list);
00056         temp->alpha=22;
00057         sprintf(temp->beta, "Kristy");
00058 
00059         puts("list: ");
00060         print_data(list);
00061 
00062         puts("sorted: ");
00063         sortlist(&list, isbigger);
00064         print_data(list);
00065         
00066         clearlist(&list);
00067         return 0;
00068 }

Generated on Wed Mar 19 12:08:08 2008 for dynlist by  doxygen 1.5.3