⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainprint.cpp

📁 该程序实现了用文件记录变长字节流
💻 CPP
字号:
#include<iostream.h>
#include<fstream.h>
#include<stdlib.h>
#include<iomanip.h>
#include<string.h>
#include"mainfile.h"

void mainprint(char *p1,char *p2)
{fstream fl1(p1,ios::in|ios::out|ios::binary);
if(!fl1)
{cerr<<"exit error!"<<endl;
exit(1);}
fstream fl2(p2,ios::in|ios::out|ios::binary);
if(!fl2)
{cerr<<"exit error!"<<endl;
exit(1);}
fl2.seekg(0,ios::end);
int toto=fl2.tellg()/b3;
indexnode *A=new indexnode[toto];
fl2.seekg(0,ios::beg);
fl2.read((char *)A,toto*b3);
int work,cd;
indexnode temp;
//用冒泡排序法排序
for(int pass=1;pass<toto;pass++)
{work=1;
for (cd=0;cd<toto-pass;cd++)
if(A[cd].value>A[cd+1].value)
{temp=A[cd];
A[cd]=A[cd+1];
A[cd+1]=temp;
work=0;}
if(work) break;
}
element temp3;
int nn;
for(int it=0;it<toto;it++)
{nn=A[it].num;
team Ft;
fl1.seekg(nn*b2,ios::beg);
fl1.read((char*)&Ft,b2);
for(int pass=1;pass<10;pass++)
{work=1;
for (cd=0;cd<10-pass;cd++)
if(Ft.data[cd].key>Ft.data[cd+1].key)
{temp3=Ft.data[cd];
Ft.data[cd]=Ft.data[cd+1];
Ft.data[cd+1]=temp3;
work=0;}
if(work) break;
}
int jt;
for(int kt=0;kt<15;kt++)
if(Ft.data[kt].deletetag==0&&Ft.data[kt].key!=0)
cout<<Ft.data[kt].key<<" "<<Ft.data[kt].name<<" "<<Ft.data[kt].rest;
if(Ft.data[kt].next!=-1) {jt=Ft.data[kt].next;
cout<<Ft.data[jt].rest<<endl;}
else cout<<endl;
}
}

⌨️ 快捷键说明

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