我在c代碼中有以下方法。爲什麼沒有創建新節點?
void add(int number)
{
Node node1; // a new node should be created
createNodeRelationshipBetween(&node1, current);
setData(&node1, number);
setCurrentNode(&node1);
incrementSize();
printf("Inserted Node [data:- %d, Node address:- %p\n", node1.data, &node1);
}
其中節點作爲
typedef struct node
{
struct node *prior;
struct node *next;
int data;
} Node;
我打電話添加()在一個循環中被定義。我的理解是,每次我調用add(i)時,都應創建一個新節點。相反,當我打印節點1的地址時,每次都是一樣的。有人可以請解釋錯誤在哪裏,我如何創建一個新的節點?
我認爲這個答案的最後一句應該是:不要忘記*當你完成時釋放節點。 – Xint0 2011-06-14 23:51:28
@ Xint0:true:) – 2011-06-14 23:52:21