将项目添加到链接列表的末尾

时间:2013-12-16 15:43:40

标签: c++ linked-list

List_cell *currPtr = list_first_;

if(list_first_ == nullptr){

    list_first_ = new_cell;
}
else{

    currPtr = list_first_;
    while(currPtr->next != nullptr){
        currPtr = currPtr->next;
        currPtr->next = new_cell;
    }
}

这有什么问题?它似乎根本没有进入while循环...感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

您不希望将currPtr->设置为new_cell,直到您到达列表的末尾,否则您只需在列表中的第一个元素之后添加new_cell,然后丢失已经存在的内容清单。

List_cell *currPtr = list_first_;

if(list_first_ == nullptr){

    list_first_ = new_cell;

}
else{

    currPtr = list_first_;
    while(currPtr->next != nullptr){
        currPtr = currPtr->next;
    }
    currPtr->next = new_cell;
}
只有当你到达目的地时,

才会将new_cell添加到列表中。