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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.03.2012, 18:56   #1
sionis
 
Регистрация: 19.03.2012
Сообщений: 5
По умолчанию Файлы в СИ

Просьба помочь начинающему программисту в СИ.
Нужно удалить структуру из файла использую алгоритм создания нового файла и записи его данных файла кроме тех которые указаны.
Код структуры:
Код:
struct Computer{
	char manufacturer[25];
	int year;
	int price;};]
Интересующий участок программы:
Код:
case 3:{
			FILE *fp=fopen("computer.dat","a+b");
			FILE *temp=fopen("temp.dat","wb");
			printf("\nWhat year you want to delete: ");
			int cmp;
			scanf("%i",&cmp);
			fseek(fp,0,SEEK_END);
			int size=ftell(fp);
			int n=size/sizeof(Computer);
			Computer *c=new Computer[n];
			rewind(fp);
			fread(c,sizeof(Computer),n,fp);
			for(int i=0;i<n;i++){
				if(c[i].year!=cmp);
			fwrite(&c[i],sizeof(Computer),1,temp);}
			fclose(temp);
			fclose(fp);
			delete(fp);
			char oldname[]="temp.dat";
			char newname[]="computer.dat";
			rename(oldname,newname);
			break;
			   }
Огромная просьба помочь.
sionis вне форума Ответить с цитированием
Старый 19.03.2012, 19:41   #2
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Сообщений: 176
По умолчанию

вот здесь как
Код:
if(c[i].year!=cmp);
microbit вне форума Ответить с цитированием
Старый 19.03.2012, 19:56   #3
sionis
 
Регистрация: 19.03.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от microbit Посмотреть сообщение
вот здесь как
Код:
if(c[i].year!=cmp);
Непонемаю в чем проблема.
sionis вне форума Ответить с цитированием
Старый 19.03.2012, 20:19   #4
microbit
Форумчанин
 
Аватар для microbit
 
Регистрация: 26.09.2011
Сообщений: 176
По умолчанию

точку с запятой уберите.
microbit вне форума Ответить с цитированием
Старый 19.03.2012, 21:44   #5
sionis
 
Регистрация: 19.03.2012
Сообщений: 5
По умолчанию

Цитата:
Сообщение от microbit Посмотреть сообщение
точку с запятой уберите.
Огромное спасибо
sionis вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очень нужно сделать задачу в Delphi(Типизированные файлы. файлы записи) Vitalik1 Помощь студентам 1 16.12.2011 10:38
Файлы (текстовые файлы) Finn4ik Помощь студентам 0 25.04.2011 21:42
Не сохраняет файлы (Создает файлы пустышки) Rock231 Помощь студентам 2 25.12.2010 12:31
Файлы данных.Типизированные файлы. вылка Помощь студентам 6 17.05.2010 15:42
два вредных вопроса:про асю и прикриплёные файлы файлы steck Свободное общение 3 17.06.2007 14:53