Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.09.2012, 00:15   #1
Андрей!
Пользователь
 
Регистрация: 04.11.2011
Сообщений: 45
По умолчанию Считывание структуры из файла

Имеется следующая функция считывающая структуру из файла и создающая односвязный список.

Проблема в том, что если в файле > 1 э-та - список строиться не правильно. Т.е первый э-т правильно встаёт на head, второй встаёт на место, а третий и далее - хз куда. как я понял ошибка при переходе от э-та к э-ту. Посмотрите пожалуйста что не так.

Цитата:
head - Голова
current - Для перемещения по списку
result - кол-во э-тов в файле
numofelements - кол-во этов в списке
temp - сам э-т который в список встаёт
Код:
void readFromFile()
{
	numberOfElements = 0;
	
	FILE* file = fopen("data.bin", "rb");
	double fileSize = 0;
	fseek (file, 0, SEEK_END);
	fileSize = ftell(file);
	fclose (file);
	
	double result = fileSize / sizeof(data);
	

	file = fopen("data.bin","rb");
	
	while(result)
	{  

	    elemOfQueue* current = new elemOfQueue;
     	current = head;

		elemOfQueue* temp = new elemOfQueue;
		fread(temp,sizeof(data),1,file);
		
		if(head == NULL) 
			{
				head = temp;
				temp->next = NULL;
			}

		else 
		{
			for(int i = 0; i < numberOfElements; i ++)
				current = current -> next;


			if(head -> next == NULL)
			{
				head -> next = temp;
				temp -> next = NULL;
            }

			current = temp;
			temp -> next = NULL;
		};

		numberOfElements++;
		result--;
	};         
		fclose(file);
	}

Последний раз редактировалось Stilet; 24.09.2012 в 08:15.
Андрей! вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
считывание из файла ronny137 Помощь студентам 0 28.04.2011 02:03
Считывание из файла Tema_Crazzzy Visual C++ 2 09.09.2010 13:41
считывание с файла G.I.JOE Общие вопросы C/C++ 2 06.06.2010 09:18
Считывание с файла на С++ lamak Помощь студентам 8 01.11.2009 22:18
Считывание из файла DimkinStd Общие вопросы Delphi 7 24.01.2007 19:18