删除第一个节点并获取头节点数据

时间:2013-10-25 00:36:46

标签: c nodelist

我有这个c程序删除第一个节点并显示节点头数据。

int Delete(struct node** head){
struct node *temp = headRef;
headRef = headRef->next;
tmp->next=NULL;
free(temp);
int headNode = headRef->data;
return headNode;   }

我无法删除第一个节点,但是它给了我错误的请求成员'data'和'struct'

1 个答案:

答案 0 :(得分:0)

我不明白headRef来自哪里。

其次,您只需要将头节点传递给函数,因此您需要 struct node* head,而非struct node** head

这是我的代码,我希望它可以帮到你。

int Delete(struct node* head) {
    struct node* temp = head;
    struct node* nextNode = head -> next;
    int headData = head -> data;

    temp -> next = NULL;
    free(temp);
    head = nextNode;

    return headData;
}