typedef struct listNode{
  struct listNode *prev;
  struct listNode *next;
  void *value;
}listNode;prev:链表节点的前驱next:链表节点的后继value:节点中的值typedef struct list{
  listNode *head;
  listNode *tail;
  unsigned long len;
}list;head:链表头节点tail:链表尾节点len:链表中节点个数void*保存节点值,可以保存各种不同类型的值。