// 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:下一个节点*指针。