2010年9月6日星期一

链表的初始化

/****************************************************************************
    32   *
    33   * 功能:初始化链表
    34   * 传入参数:头指针
    35   *
    36   * *************************************************************************/
    37  void initList(NODE** pHead)
    38  {
    39      if (NULL!=*pHead) {     /*是否为空指针,不留野指针*/
    40          DEBUG("in initList, *pHead is not NULL\n");     /*及时输出错误信息,便于调试代码*/
    41          exit(-1);       /*如果为野指针,则退出*/
    42      }
    43
    44      *pHead=(NODE*)malloc(sizeof(NODE));
    45      if (NULL==*pHead) {     /*malloc函数返回的地址有可能是NULL吗???*/
    46          DEBUG("in initList, malloc error!\n");
    47          exit(-1);
    48      }
    49    
    50      memset(*pHead, 0, sizeof(NODE));        /*内存填充0,首个节点无数据*/
    51      DEBUG("initList success!\n");           /*输出执行成功信息*/
    52
    53  }
    54

没有评论:

发表评论