示例#1
0
char *
list_insert_link (ListFuncPhonePoint *point, ListFuncPerson *list_head, char *token)
{
  int count = 1;

  if (list_head == NULL)
    {
      ListFuncPerson *new_list;
      new_list = (ListFuncPerson *) malloc (sizeof (ListFuncPerson));

      token = strtok (token, LIST_FUNC_DELIM);
      if (token != NULL)
        new_list -> eig_no = atoi (token);

      while ((token = strtok (NULL, LIST_FUNC_DELIM)) != NULL)
        {
          list_insert_data (new_list -> in_data, token, count);
          token = NULL;
          count++;
        }
      new_list -> next_ptr = point -> tail;
    }
  else
    {
      while ((token = strtok (token, LIST_FUNC_DELIM)) != NULL)
        {
          printf ("%s\n", token);
          token = NULL;
        }
      printf ("\n---------------------------\n\n");
    }

  return NULL;
}
示例#2
0
void list_insert_tuple(List* list, const Tuple* tuple)
{
   ListData data;

   assert(list_is_valid(list));
   assert(tuple_is_valid(tuple));
   assert(list->type == LIST_TUPLE);
   
   data.tuple = tuple_copy(tuple);

   list_insert_data(list, &data);
}
示例#3
0
void list_insert_entry(List* list, const Entry* entry)
{
   ListData data;

   assert(list_is_valid(list));
   assert(entry_is_valid(entry));
   assert(list->type == LIST_ENTRY);

   data.entry = entry_copy(entry);

   list_insert_data(list, &data);
}
示例#4
0
void list_insert_elem(List* list, const Elem* elem)
{
   ListData data;

   assert(list_is_valid(list));
   assert(elem_is_valid(elem));
   assert(list->type == LIST_ELEM);
   
   data.elem = elem_copy(elem);

   list_insert_data(list, &data);
}