首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

队尾指针丢失,该怎么解决

2013-11-25 
队尾指针丢失当队列中的最后一个元素被删后,队列尾指针也丢失了,因此需对队尾指针重新赋值(指向头结点)Sta

队尾指针丢失
当队列中的最后一个元素被删后,队列尾指针也丢失了,因此需对队尾指针重新赋值(指向头结点)   

Status DeQueue (LinkQueue &Q, 
                                            QElemType &e) {
  // 若队列不空,则删除Q的队头元素,
  //用 e 返回其值,并返回OK;否则返回ERROR
   if (Q.front = = Q.rear)    return ERROR;
   p = Q.front->next;   e = p->data;
   Q.front->next = p->next;
   if (Q.rear = = p)  Q.rear = Q.front;
   free (p);      return OK;
}


这里队尾指针是属于指针悬挂吗?
指针悬挂具体又指什么? 数据结构 队列 c语言 指针悬挂
[解决办法]

free (p); 
p =NULL;
//悬挂指针也就是野指针,有地址,但是不知道指向什么地方!

[解决办法]
没那句if的话,自然是发生你顶楼说的那个问题...

热点排行