2017-07-16 53 views
-2

在PSET 5S演練中,節點結構的定義如下:結構節點*未來的理解

typedef struct node 
{ 
    int value; 
    struct node* next 
} node; 
node* head = malloc(sizeof(node)); 
cursor = head; 
//update the cursor 
cursor->next 

當我們然後使用光標 - >下一條語句,跳轉到下一個節點。結構如何知道跳到下一個,連接它們的是什麼?

我明白光標指向「當前節點」,然後 - >接下來將進入下一個節點鏈表。

當定義節點結構,接下來的預定關鍵字?

至於我的指針的理解,我們正在創建一個指向結構節點,並把它稱爲「下一個」,但我沒有看到節點的連接方式。

感謝

回答

1

正如頭指向當前節點,next當前節點指向一些其他的節點內。但移動到next節點,你必須寫cursor = head - > nextcursor = cursor - > next並不僅僅是cursor - > next。也就是說,你必須將光標移動到下一個節點才能訪問它的數據。請注意,您可能需要使用cursor - > next = malloc(sizeof(node)) ;來分配節點。否則,如果嘗試訪問下一個節點的數據,則會出現分段錯誤。也許你應該再次通過指針和結構部分來清楚地理解它。確保你也看到了短褲。