void add_end_node(Node_t * head,int data) //这里是在尾部添加节点
{
Node_t * newnode=(Node_t*)malloc(sizeof(Node_t));
if(!newnode)
{
exit(1);
}
newnode->data=data;
newnode->next=NULL;
Node_t * cur= (Node_t *)head->next;
Node_t * cur1=head->next;
Node_t * curr=head;
//head->next=newnode;
cur=newnode;
curr->next=newnode;
}
将cur=newnode;意思是将newnode的地址给到cur这个变量
Node_t * cur= (Node_t *)head->next;这个是将head->next的地址付给cur,相当于把head->next变成了newnode赋值给了cur,不会对链表产生影响。
curr->next=newnode;是将newnode的值给到head->next,属于链表操作,新增一个节点。
这两个是完全不一样的
标签:Node,head,cur,next,链表,newnode,错误处理 From: https://blog.csdn.net/weixin_58038206/article/details/144488060