ADT.h
#ifndef LIST_H_
#define LIST_H_
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define TSIZE 45
typedef struct film
{
char title[TSIZE];
int rating;
}Item;
typedef struct node
{
Item item;
struct node *next;
}Node;
typedef struct
{
Node *head;
Node *tail;
}List;
///typedef Node* List;
void InitializeList(List *plist);
bool ListIsEmpty(const List *plist);
bool ListIsFull(const List *plist);
bool AddItem(Item item, List *plist);
void Traverse(const List *plist, void(*pfun)(Item));
void EmptyTheList(List *plist);
unsigned int ListItemCount(const List list);
void Print(const List list);
#endif
ADT.c
#include "ADT.h"
void InitializeList(List *plist)
{
plist->head = NULL;
plist->tail = NULL;
}
bool ListIsEmpty(const List *plist)
{
if(plist->head == NULL)
return 1;
else