簡體   English   中英

使用函數指針作為參數

[英]Using a function pointer as parameter

我正在嘗試使用以下命令將節點添加到鏈表的前面:

struct Node *addFront(struct List *list, void *data) {

到目前為止,我有以下內容:

struct Node *front = (struct Node *) malloc(sizeof(struct Node)){
    if(front == NULL) {
        return NULL;
    }

    front->data = data;

    if(list->head == 0) {
        list->head = front;
        front->next = NULL;
    }
    else {
        list->head = front;
        *front->next =*
    }

    return front;
}

如果添加的節點不是要創建的第一個節點,我會感到困惑……我想說些類似的東西:front-> next = list; 但是list是List類型的,所以我確定會遇到一些不兼容的賦值錯誤..什么是最好的方法?

Node *oldHead = list->head;
list->head = front;
front->next =oldHead;

存放舊的頭部,並將其分配給front->next

要不就

front->next =list->head;
list->head = front;

就足夠了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM