<分区>
我是 C 的新手。
我正在编写简单的链表应用程序。
这是我的代码:
typedef struct
{
struct node * NextNode;
int data;
}node;
void addNode(int data, node * Head)
{
if (Head == NULL)
{
Head = malloc(sizeof(node));
Head->data = data;
Head->NextNode = NULL;
return;
}
node* CurrentNode = Head;
node* _Newnode = malloc(sizeof(node));
(*_Newnode).data = data;
_Newnode->NextNode = NULL;
while (CurrentNode->NextNode != NULL)
{
CurrentNode = CurrentNode->NextNode;
}
CurrentNode->NextNode = _Newnode;
}
问题出现在传递 Head = NULL
时
通过 head= NULL
后,Head
没有改变并保持为 NULL
我做错了什么?
您能否也解释一下下面发生的事情?
谢谢