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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.10.2011, 00:56   #1
RaTeN
Пользователь
 
Регистрация: 14.11.2010
Сообщений: 25
По умолчанию Дублирует структуру при считывании из файла

Есть две функции, запись нормально, но когда читаем структуру, то последняя структура дублируется, возможно в feofe дело, но не могу понять

Код:
void Write (Apteka *phead)
{
	FILE  *fp;
	int i=0;
	fp = fopen("Apteki.dat", "wb");
	Apteka *t, m[1];
	t = phead; t = (*t).sled;
	while(t!=NULL)
	{
		m[0].nomer=(*t).nomer;
		strcpy(m[0].adres,(*t).adres);
		strcpy(m[0].nazvanie,(*t).nazvanie);
		fwrite(m, sizeof  m, 1, fp);
		t = (*t).sled;
		
	}
	fclose(fp);

}

void Chitat (Apteka *phead)
{
	int i=0;
	
	Apteka *t, m[1];
	t = phead; (*t).sled = NULL;
	FILE  *fp;
	fp = fopen("Apteki.dat", "rb");
	while(!feof(fp))
	{
		(*t).sled = new (Apteka); 
		t = (*t).sled; 
		fread(m, sizeof  m, 1, fp);
		(*t).nomer=m[0].nomer;
		strcpy((*t).adres, m[0].adres);
		strcpy((*t).nazvanie, m[0].nazvanie);
		(*t).sled = NULL;
		
	}	
}
RaTeN вне форума Ответить с цитированием
Старый 04.10.2011, 00:58   #2
RaTeN
Пользователь
 
Регистрация: 14.11.2010
Сообщений: 25
По умолчанию

еще вопрос, тут сохранение такое, а можно по другому как-нибудь?
RaTeN вне форума Ответить с цитированием
Старый 05.10.2011, 00:28   #3
RaTeN
Пользователь
 
Регистрация: 14.11.2010
Сообщений: 25
По умолчанию

if(EOF==fread(m, sizeof m, 1, fp)) break;

добавил проверочку. все норма
RaTeN вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблема при считывании sergio11 Общие вопросы .NET 3 28.11.2010 15:37
Запрос дублирует записи при выдаче результатов hronos1975 Microsoft Office Access 2 25.05.2010 07:34
Проблема при считывании из файла JeyKip Общие вопросы C/C++ 0 17.01.2010 22:03
Помогите разобраться, ошибка при считывании из ini файла XATAB Помощь студентам 4 13.02.2007 05:57