代码:
#include <iostream>
#include <windows.h>
using namespace std;
void main()
{
void Read1(int*,long);
void Read2(int*,long);
void Read3(int*,long);
void Read4(int*,long);
void Read5(int*,long);
while(1){
cout<<"输入读取的字节数:";
long n;
cin>>n;
int * data=new int[n];
DWORD t1,t2,t3,t4,t5;
t1=GetTickCount();
Read1(data,n);
t2=GetTickCount();
Read2(data,n);
t3=GetTickCount();
Read3(data,n);
t4=GetTickCount();
Read5(data,n);
t5=GetTickCount();
cout<<"顺序:"<<int(t2-t1)<<endl;
cout<<"乱序1:"<<int(t3-t2)<<endl;
cout<<"乱序2:"<<int(t4-t3)<<endl;
cout<<"逆序:"<<int(t5-t4)<<endl;
cout<<endl;
delete [] data;
}
}
void Read1(int* data,long n){//顺序读取
long i=0;
while(i<n){
data[i++]=1;
}
}
剩下的几个Read()基本类似,运行的时候再delete[]处出现heap corruption的错误,为什么?
湖上湖
阿晨1998
相关分类