C語言-鏈表結構體使用


使用struct結構體構造node鏈表,在link中聲明node head 和 node tail 來命名兩個結構體的頭和尾鏈表

這里介紹鏈表的初始化和鏈表的清除操作

/*
構造鏈表的結構體
*/
#include <stdio.h>
typedef struct node{
    int val; 
    struct node *p_next; 
} node; 

typedef struct {
    node head; 
    node tail; 
} link 

//進行鏈表的初始化 
void link_init(link *p_link) {
    //將頭指針指向尾指針 
    p_link->head.p_next = &p_link->tail; 
    //將尾指針對應的指針地址設置為0 
    p_link->tail.p_next = NULL; 
}

//進行鏈表的刪除操作 
void link_deinit(link *p_link) {
    while (p_link->head.p_next != &p_link->tail) {
        node *p_first = p_link->head; 
        node *p_mid = p_first->p_next; 
        node *p_last = p_mid->p_next; 
        free(p_mid); 
        p_mid = NULL; 
    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM