【发布时间】:2018-05-15 22:15:07
【问题描述】:
我正在研究C中的单链表,我想问一下为什么我们给作为参数,例如,在插入函数void insert_element(struct Node** head, int element)双指针,但在显示函数void display_list(struct Node* head)单指针指向头。它们都给出相同的地址(我们用& 调用插入函数)。我们使用双指针是因为我们修改了插入或删除元素的列表?
【问题讨论】:
-
另一种选择是
struct Node *insert_element(struct Node *head, int element),哪个 IMO 更好。这样,您就不会乱用指针指向指针,但您确实需要分配返回值head = insert_element(head, x) -
可能想在
display_list中也使用const来表示该函数不会改变列表的内容。
标签: c