www.pudn.com > v4670_flight.rar > Datatype.h


/* Please run Chinese a system, then you can read the comment. */ 
/* 文件名:datatype.h 
   说明:所有用到的数据类型及其基本操作 
   作者:01090B1 李子明 13号 
   创建日期:2003/6/30 
   修改日期:2003/7/9                   */ 
#define TRUE  1 
#define FALSE 0 
typedef int BOOL; 
#define NEW(type, size) (type*)malloc(sizeof(type) * size) 
typedef struct _date { /* 日期 */ 
  int m_year; 
  int m_month; 
  int m_day; 
} DATE; 
typedef struct _time { /* 时间 */ 
  int m_hour; 
  int m_min; 
} TIME; 
typedef struct _flight { /* 航班数据 */ 
  int m_fltno; /* 航班号,若此成员为-1,则表示此航班未使用 */ 
  char m_szFrom[30]; /* 起飞港 */ 
  char m_szPass[30]; /* 途经港 */ 
  char m_szTo[30]; /* 到达港 */ 
  TIME m_start; /* 起飞时间 */ 
  TIME m_arrive; /* 到达时间 */ 
  TIME m_fly; /* 飞行固定时间 */ 
  int m_people; /* 乘客限额 */ 
} FLIGHT, *PFLIGHT; 
typedef struct _passengernode { /* 乘客数据 */ 
  char m_szName[20]; /* 姓名 */ 
  char m_szCorp[30]; /* 单位 */ 
  char m_szNumber[19]; /* 身份证号,考虑到字母的情况,故使用字符串 */ 
  DATE m_Date; /* 订票日期 */ 
  int m_fltno; /* 航班号 */ 
  int m_seatno; /* 座位号 */ 
} PASSENGER, *PPASSENGER; 
typedef struct _psgnode { /* 乘客结点 */ 
  PASSENGER m_psg; 
  struct _psgnode *next; 
} NODE, *PNODE; 
/* 清空键盘缓冲区 */ 
void ClearBuffer(void); 
/* 读取航班数据 */ 
void ReadFlight(FLIGHT fltlist[]); 
/* 读取乘客数据 */ 
void ReadPassenger(PNODE psglist); 
/* 添加航班 */ 
BOOL AddFlight(FLIGHT fltlist[], PFLIGHT fltdata); 
/* 删除航班 */ 
void DelFlight(FLIGHT fltlist[], int index); 
/* 添加乘客 */ 
void AddPassenger(PNODE psglist, PPASSENGER psgdata); 
/* 删除乘客 */ 
BOOL DelPassenger(PNODE psglist, int index); 
/* 清空乘客链表 */ 
void ClearPsgList(PNODE psglist); 
/* 取得乘客总数 */ 
unsigned int GetPsgCount(PNODE psglist);