链表(单向链表的建立、删除、插入、打印)(5)

p = p->next;
    while (p != NULL)  //若不是表尾,则循环打印节点的数值
    {
        printf("%5d%10d\n", j, p->data);//打印第j个节点数据
        p = p->next;  //让p指向下一个节点
        j++;
    }
}
//函数的功能:释放head所指向的链表中所有节点占用的内存
void DeletMemory(struct link *head)
{
    struct link *p = head, *pr = NULL;
    while (p != NULL)  //若不是表尾,则释放节点占用的内存
    {
        pr = p;  //在pr中保存当前节点的指针
        p = p->next;//让p指向下一个节点
        free(pr); //释放pr指向的当前节点占用的内存
    }
}

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/ecf9a3a10e83976f12bb957260f17195.html