deletekey.cpp

来自「该程序实现了用文件记录变长字节流」· C++ 代码 · 共 36 行

CPP
36
字号
#include<iostream.h>
#include<fstream.h>
#include<stdlib.h>
#include<iomanip.h>
#include<string.h>
#include"index.h"
index deletekey(char *p,index & a)
{fstream f1(p,ios::in|ios::out|ios::binary);
if(!f1) 
{cerr<<"exit error"<<endl;
exit(1);
}
index pn={-1,"nulltag",2};
int pt=0;
f1.seekg(0,ios::end);
int total=f1.tellg()/d1;
index cp; 
index *A=new index[total];
f1.seekg(0,ios::beg);
f1.read((char*)A,total*d1);
for(int i=0;i<total;i++)
{if(A[i].key==a.key&&A[i].deletetag==0) 
{A[i].deletetag=1;
cp=A[i];
pt=1;}
if(A[i].key>a.key) break;}
f1.seekg(0,ios::beg);
f1.write((char*)A,d1*total);
if(pt==1) return cp;
else return pn;
}




⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?