現在我看到了兩種啓動節點的方法?我們是否需要爲鏈表節點分配內存?
Node c={6, NULL}; Node b={3, &c}; Node a={1, &b}; Node *root = &a;
Node * new_Node = (Node*)malloc(sizeof(Node)); new_Node->data = 10; new_Node->next = &m;
哪個更好?哪個是對的?
另一個問題是我們如何釋放內存?
對於1,我們不需要釋放mem對嗎?
對於2,對於下一個指針,free(root->next)
,root->data=NULL
,這是刪除節點的正確方法嗎?
你應該選擇C或C++,而不是兩者。在C++中,通常不會像這樣使用'malloc'和'free'。 – juanchopanza