回收队列
回收可以快速取消队列,方法是让头尾碰面即可。
status destoryQueue(LinkQueue* que) { //回收队列if(que->head){que->rear = que->head->next;free(que->head);que->head=que->rear;}return OK;
}
遍历队列和测试方法
提供一个简单的方法来测试链表队列。
status viewQueue(LinkQueue* que){if(que->rear == que->head)return ERROR;QueuePtr p =que->head->next;while(p){printf("val:%d",p->data);p=p->next;}return OK;
}int main(int argc, char **argv){LinkQueue myQueue;initQueue(&myQueue);for(int i=1;i<=5;i++)enQueue(&myQueue,i);viewQueue(&myQueue);QElemtype a;for(int i=0;i<5;i++){delQueue(&myQueue,&a);printf("%d\n",a);}destoryQueue(&myQueue);printf("fuck !"); return 0;
}