链接列表中的节点、&node 和 node->next 之间的区别


// Program to insert node at front in linked list.

这是链表中的简单程序,但我不明白两者之间的区别 &newNode、newNode 和 newNode->next 的值

void PushAtFrontLinkList(int value)
{
    if(head==NULL)
    {
        head=tail;
    }
    node* newNode=new node();
    newNode->data=value;
    newNode->next=head; 
    head=newNode;

    // Trying to differentiate between data contained in newNode and &newNode and newNode->next
    cout<<"just new node"<<newNode<<endl; // what will be contained in newNode?     cout<<"address of node"<<&newNode<<endl; // what will be contained in &newNode?  
    cout<<"new node next"<<newNode->next<<endl; // It will be the address of the next node?

}

newNode 将包含您刚刚创建的新节点对象的地址。至于newNode->next,它包含列表中下一个节点的地址。

请注意,在最后,newNode将是列表的头部,newNode->next将指向旧的头部。

&newNode:节点内存中的地址newNode:要操作的节点newNode->next:下一个节点*指针。

相关内容

  • 没有找到相关文章

最新更新