#include <cstdlib>
#include <iostream>
#include <string.h>
/*******************************************
å è½ï¼ 身份è¯å·æ¥è¯¢
éæºçæ身份è¯å·
typedef struct enum srand rand 使ç¨æ¼ç¤º
å½æ°æé使ç¨æ¼ç¤º
Linuxç³»ç»æºä»£ç ä¸çå
Œ
±å表LIST使ç¨æ¼ç¤º
æ件åï¼ codeid2.cpp
ç¸å
³æ件: å
¨å½åå°åºç代ç ä¿¡æ¯æ件code.bin
ä½ è
ï¼ ææ°¸
æ¥ æï¼ 2010.9.4
******************************************/
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys\timeb.h>
#include <conio.h>
#include <dos.h>
using namespace std;
typedef struct list_head{
struct list_head *next;
struct list_head *prev;
}LIST;
typedef struct _Page{
LIST sort_list;
long Code;
char Name[100];
int Hash;
LIST Hash_List;
}PAGE;
//ç¨äºè¯»åæ件
typedef struct _context{
long Code; //å°åºä»£ç ,6ä½æ´æ°
char Name[100]; //å°åºä¿¡æ¯
} IDCODE;
typedef enum _member_list_name{
sort_list,Hash_List
}MEMBER_LIST_NAME;
typedef struct _person_id {
char Code[19]; //个人身份è¯å·ç
} PERSON_ID;
typedef struct{
long Code; //å°åºä»£ç ,6ä½é¿
char Name[100];//å°åºä»£ç çå称,å³å°åä¿¡æ¯
int Year;
int Month;
int Day;
int Sex;
PERSON_ID _id; //18ä½ä¸ªäººèº«ä»½è¯å·ç
} ID_INFOR;
//åæ¾ç³»ç»å½åçæ¥æåæ¶é´
typedef struct{
int year;
int month;
int day;
int hour,minute, second;
int weekday;
}SYSDATE;
//åå§åå表ç头æé,让å®æåèªå·±
#define Init_List(ptr) do { \
(ptr)->next = (ptr); \
(ptr)->prev = (ptr); \
} while (0)
//ç±ä¸ä¸ªç»æptr,计ç®åºå®æå¨ç宿主ç»æçå°å
//type 宿主ç»æçç±»åå称
//member æ¯ptrå¨å®¿ä¸»ç»æä¸çå称
#define list_entry(ptr,type,member) \
((type*)((char*)(ptr)-(unsigned long)(&((type*)0)->member)))
#define MAX_NUM 20
typedef int (*PFUN_COMPARE)(LIST * _list1, LIST * _list2,MEMBER_LIST_NAME ListName);
typedef void(*PFUN_PRINT)(LIST*head, MEMBER_LIST_NAME ListName);
温馨提示:答案为网友推荐,仅供参考