下面的代碼應該在C中創建一個單獨鏈接的列表。我想了解insert_node用指針頭做什麼。每次調用insert_node時,「head」指向什麼?C中一個結構體中的結構暗示了什麼?
struct node{
int data;
struct node* next;
};
typedef struct node node;
node* head = NULL;
void insert_node(int data) {
node *new_node = (node*) malloc(sizeof(node));
new_node->data = data;
new_node->next = head;
head = new_node;
}
你可能想要改變你的問題標題,因爲它有點誤導。 –
第一行爲「結構節點」分配內存以創建新節點。第二行填滿這個新創建的節點中的數據字段。第三行設置指向現有頭的下一個指針,從而將此節點鏈接到現有鏈接列表。第四行將這個新節點標記爲新的節點。 – Tuxdude
謝謝,我想我可以讀取第三行和第四行,「new_node-> next'的指針地址改變爲'head'的指針地址,它指向一個NULL值,然後'head'的指針地址改變爲'new_node'的指針地址,這是一個結構。 – Pippi