2024年1月4日发(作者:)

#ifndef _OPER_H__#define _OPER_H__#include"basicInfo.h"//申请动态内存

把获取到的图书、管理员、读者结构体存储到动态内存中int addBk(Bk *Bps);

int addAdmin(Admin *Aps);int addRed(Red *Rps);//通过获取到图书、管理员、读者的id号

删除动态内存中相应的结构体int delBk(int id);int delAdmin(int id);int delRed(int id);//通过获取到的图书、管理员、读者的id号

读取动态内存中的结构体Bk* findBk(int id);Admin* findAdmin(int id);Red* findRed(int id);#endifoper.c:#include"oper.h"/*int main(){ Bk a;}*///申请动态内存

把获取到的图书结构体存储到动态内存中int addBk(Bk *Bps){ if(Bps == NULL) { return ARG_ERR; } if(pbk == NULL) { pbk = malloc(SIZE_BK*Bsize); } if(pbk != NULL && Bsize == Bcnt) { Bsize = 2*Bsize; pbk = realloc(pbk,SIZE_BK*Bsize); } if(pbk == NULL) { return ALLOC_ERR; } pbk[Bcnt] = *Bps; ++Bcnt; return SUCCESS;}//申请动态内存

把获取到的管理员结构体存储到动态内存中int addAdmin(Admin *Aps){ if(Aps == NULL) { return ARG_ERR; } if(padmin == NULL) { padmin = malloc(SIZE_ADMIN*Asize);

padmin = malloc(SIZE_ADMIN*Asize); } if(padmin != NULL && Asize == Acnt) { Asize = 2*Asize; padmin = realloc(padmin,SIZE_ADMIN*Asize); } if(padmin == NULL) { return ALLOC_ERR; } padmin[Acnt] = *Aps; ++Acnt; return SUCCESS;}//申请动态内存

把获取到的读者结构体存储到动态内存中int addRed(Red *Rps){ if(Rps == NULL) { return ARG_ERR; } if(pred == NULL) { pred = malloc(SIZE_RED*Rsize); } if(pred != NULL && Rsize == Rcnt) { Rsize = 2*Rsize; pred = realloc(pred,SIZE_RED*Rsize); } if(pred == NULL) { return ALLOC_ERR; } pred[Rcnt] = *Rps; ++Rcnt; return SUCCESS;}//通过获取到图书的id号

删除动态内存中相应的结构体int delBk(int id){ size_t i; for(i=0;i

删除动态内存中相应的结构体int delAdmin(int id){ size_t i; for(i=0;i

{ padmin[i] = padmin[Acnt-1]; --Acnt;// printf("Acnt:123"); return SUCCESS; } } return FAIL;}//通过获取到读者的id号

删除动态内存中相应的结构体int delRed(int id){ size_t i; for(i=0;i

读取动态内存中的结构体Bk* findBk(int id){ size_t i; for(i=0;i

} } return NULL;}//通过获取到的管理员的id号

读取动态内存中的结构体Admin* findAdmin(int id){ size_t i; for(i=0;i

} } return NULL;}//通过获取到的读者的id号

读取动态内存中的结构体Red* findRed(int id){ size_t i; for(i=0;i

} }