@igoodmood

Чтение бинарного файла без использования массива?

Возможно ли чтение бинарного файла без массива? Написал программу, которая создает два файла, в один добавляет произвольные числа, а в другой по нужному критерию из первого. Программа работает не совсем корректно: берет последнее значение первого файла и сравнивает его по нужным критериям, вместо проверки всей области. Есть решение: использовать массив и потом работать с ним, но увы условия не разрешают использовать его.
Скрин :
3822fa0a4cb34777a6b60b2e26d6dfc9.jpg
Вот код :
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include <ctime>
using namespace std;
int main()
{
	setlocale(LC_ALL, "Russian");
	srand((unsigned int) time(0));
	double numeric;
	int n;
	cout << "Введите количество чисел:";
	cin >> n;
	ofstream f("f.bin", ios::binary|ios::out);
	for(int i=0; i<n; i++)
	{
		numeric = (rand()%10);
		f.write((char *)&numeric, sizeof(numeric));
		cout << numeric << " ";
	}
	cout << endl;
	f.close();
	
	ofstream g("g.bin", ios::binary|ios::out);
	ofstream i_f("f.bin", ios::binary|ios::in);
	for(int i=0; i<n; i++)
	{
		if(numeric < 10)
		{
			g.write((char *)&numeric, sizeof(numeric));
			cout << numeric << " ";
		}
	}
	cout << endl;
	f.close();
	g.close();
	system("pause");
	return 0;
}
  • Вопрос задан
  • 403 просмотра
Пригласить эксперта
Ответы на вопрос 1
нужно брать числа из файла, не одного рид при этом.
сами прокомментировали бы код и поняли, что за...Удачи.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы