Rev 11 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include "mavl.h"
int
cmp(const void *v1, const void *v2)
{
return *((int *)v1) - *((int *)v2);
}
#define NUMVALS 16384
int
main(void)
{
int i;
int insval;
int exists;
struct mavl *t;
void * data;
struct mavliter it;
t = mavl_create(cmp, NULL, sizeof(int));
if (t == NULL) {
(void)fprintf(stderr,
"Can't create struct mavl*: %s\n",
strerror(errno));
return errno;
}
for (i=0; i<NUMVALS; i++){
insval = NUMVALS-i-1;
(void)mavl_insert(t,&insval,&exists);
}
mavliter_init(&it,t);
(void)mavliter_seek_set(&it);
while ( (data = mavliter_get(&it)) != NULL ){
int val;
val = *((int*)data);
(void)printf("%d ",val);
(void)mavliter_next(&it);
}
(void)printf("\n");
return 0;
}