C語言結構體struct需要重複調用時使用方法

最近在學習鏈表時,遇到結構體重複調用的情況。

鏈表首先聲明一個節點結構體變量,如下:

/*鏈表節點結構體*/
typedef struct ListNode
{
    /*節點數據*/
    int Element;

    /*節點指針,用來指向下一個節點*/
    struct ListNode* next;//這裏不能用LinkNode * next,會報錯。必須用struct ListNode* next
                          //即必須用結構體名進行重複定義
}LinkNode;

鏈表中節點結構體的聲明,next必須指向相同的結構體,即指向LinkNode結構體類型,但是隻能使用結構體名進行定義next。因爲在定義next時,還沒有運行到LinkNode部分,編譯器還不認識LinkNode類型。所以會報錯。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章