큐를 테스트하는 코드를 작성합시다.
int main() { EHQueue *ehq = 0; Book *book = 0;
먼저 동적으로 큐를 생성합니다.
ehq = New_EHQueue();
그리고 큐에 자료를 보관합니다.
EHQueue_Put(ehq,New_Book("C언어","홍길동",10)); EHQueue_Put(ehq,New_Book("C++언어","강감찬",20)); EHQueue_Put(ehq,New_Book("자료구조","김구",5));
이 상태에서 꺼내면 가장 먼저 보관한 “C언어” 제목의 도서여야 합니다. 이를 확인해 봅시다.
book = (Book *)EHQueue_Get(ehq); if(book) { Book_View(book); Delete_Book(book); }
두 개의 도서를 더 보관할게요.
EHQueue_Put(ehq,New_Book("알고리즘","이순신",9)); EHQueue_Put(ehq,New_Book("디자인패턴","정약용",13));
큐가 비지 않으면 반복해서 꺼내와 도서 정보를 출력합시다. 제대로 작성했다면 “C++언어”, “자료구조”, “알고리즘”, “디자인패턴” 순으로 출력할 것입니다.
while( ! EHQueue_IsEmpty(ehq)) { book = (Book *)EHQueue_Get(ehq); if(book) { Book_View(book); Delete_Book(book); } }
마지막으로 큐를 소멸합니다.
Delete_EHQueue(ehq); return 0; }