我通过代码排在队列中插入元素的逻辑,但我无法理解如何显示功能工作无法理解排队功能
void enqueue(int x)
{
queue *ptr;
queue *ptr1;
ptr=(queue*)malloc(sizeof(queue));
ptr->info=x;
if(front==rear&&front==NULL)
{
ptr->next=NULL;
front=rear=ptr;
}
else
{
while(rear->next!=NULL)
{
rear=rear->next;
}
rear->next=ptr;
ptr->next=NULL;
}
}
//由于有前面之间没有任何联系及后,我无法理解如何旁边前面指向下一个元素在队列
void show()
{
queue *ptr=front;
while(ptr!=NULL)
{
printf("%d\n",ptr->info);
ptr=ptr->next;
}
}
但是,在我已指定前置式>下将指向后方 – Newbie786 2015-04-06 10:13:22
@ Newbie786在第二呼叫开始到插入'()','front'和'rear'指向相同的元件。当你在'rear-> next'插入一个元素时,'front-> next'也指向相同的元素,因为'front == rear'。 – dasblinkenlight 2015-04-06 10:38:46
好吧,现在我得到它 – Newbie786 2015-04-06 11:06:17