
24.05.2009, 16:37
|
|
Познающий
Регистрация: 20.04.2006
Сообщений: 67
Провел на форуме: 170762
Репутация:
-1
|
|
не работает цикл поиска
задача найти в файле 1.bin байт E9
там он точно есть
однако цикл почему то работает безконечно
то есть прога просто виснет и все
Код:
#include <iostream>
#include <fstream>
using namespace std;
char buffer = 0;
int counter = 0;
int bufer0 = 0;
int bufer1 = 0;
int adres = 0;
const char filename1[] = "1.bin" //имена файлов
const char filename2[] = "2.bin";
int main(void)
{
fstream file1(filename1,ios::in); //открываем файлы
fstream file2(filename2,ios::out);
file1.seekg(adres,ios::beg); //начальная установка адреса чтения (0) чтение с начала файла
file2.seekp(adres,ios::beg); //начальная установка адреса записи (0) запись с начала файла
while(bufer0 != 233) // цикл поиска байта 0xE9
{
file1.seekg(adres); // устанавливаем адрес
file1.read(&buffer,1); // считываем содержимое по адресу в буфер
bufer0 = buffer;
adres ++; // inc adres
} // зацикленно
//закрыть файлы
file1.close();
file2.close();
return 0;
}
|
|
|