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循环...感谢您的帮助!
答案 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添加到列表中。