Exemple #1
0
int benchmark()
{
  int i;
  struct ilist *l, *the_list;
  struct sglib_iListType_iterator   it;
  int cnt = 0;

  the_list = NULL;
  for (i = 1; i < 100; i++) {
    l = malloc (sizeof (struct ilist));
    l->i = array [i];

    /* Insert the new element into the list while keeping it sorted.  */
    sglib_iListType_add (&the_list, l);
  }

  for (l = sglib_iListType_it_init (&it, the_list); l != NULL; l = sglib_iListType_it_next (&it)) {
    cnt += l->i;
  }

  for(l = sglib_iListType_it_init (&it, the_list); l != NULL; l = sglib_iListType_it_next (&it)) {
    free (l);
  }

  return cnt;
}
Exemple #2
0
int main(int argc, char **argv) {
  int                               i,a;
  struct ilist                      *l, *the_list;
  struct sglib_iListType_iterator   it;
  the_list = NULL;
  for (i=1; i<argc; i++) {
    sscanf(argv[i],"%d", &a);
    l = malloc(sizeof(struct ilist));
    l->i = a;
    // insert the new element into the list while keeping it sorted
    sglib_iListType_add(&the_list, l);
  }
  // print the list
  for (l=the_list; l!=NULL; l=l->next_ptr) {
    printf("%d ", l->i);
  }
  printf("\n");
  // free all
  for(l=sglib_iListType_it_init(&it,the_list); l!=NULL; l=sglib_iListType_it_next(&it)) {
    free(l);  
  }
  return(0);
}