int fread(char cc[],int a[],int q)
{
ifstream infile;
infile.open("C:\\Dev-Cpp\\DCS\\Decom\\a.txt",ios::binary);
infile.read(cc,257);
infile.close();
for(int i=0;i<256;i++){a[i]=(unsigned char)cc[i];}
return 0;
}
Теперь q получает значение из счетчика потока, вот что я хочу сделать,
, если q равно 0, он читает первые 256 символов, а если q равно 1, он читаетсимволы от 256 до 512 и т. д.
Это правильный способ сделать это, если cc и a имеют массив размером 256 или есть более эффективный способ сделать это?
int fread(char cc[],int a[],int q)
{
int ka=0,kb=0;
kb=q*256;
ka=ka+256;
ifstream infile;
infile.open("C:\\Dev-Cpp\\DCS\\Decom\\a.txt",ios::binary);
infile.seekg(256);
infile.read(cc,ka);
infile.close();
for(int i=0;i<256;i++){a[i]=(unsigned char)cc[i];}
return 0;
}
Я получаю необработанное исключение в 0xb9fb2475 в s949.exe: 0xC0000005: Место чтения нарушения доступа 0xb9fb2475 при отладке в vc ++ 2010.