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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.04.2010, 19:15   #1
BloodMaX
Пользователь
 
Регистрация: 27.09.2009
Сообщений: 29
По умолчанию проблемы с потоковой записью в структуру и при чтении

Код:
#include "iostream"
#include "stdafx.h"
#include <stdio.h>
#include <conio.h>
#include <string.h>

 struct oz{
	int  ballv[2];int balla[3];
	char predmeta[3][10];
	char predmetv[2][10];};

 struct student{
	    char F[10];
	    char N[10];
		char O[10];
		int godr;
		int godo;
		char ob[1];
		};

int main(int argc, char* argv[])
{
struct oz ozf;
struct student hum;
FILE *outf,*outs;
int n;
char ch;
// outf=fopen("family.txt","w");
outs=fopen("ozenki.txt","w");

    for(;;)
	{ cout<<"\n dalshe pabotat:";cin>>ch;
	     if (ch!='y') break;

	    cout<<"\n familiy: ";strcpy(hum.F,"          ");cin>>hum.F;
	    cout<<"\n name: ";strcpy(hum.N,"          ");cin>>hum.N;
		cout<<"\n otchestvo: ";strcpy(hum.O,"          ");cin>>hum.O;
	    cout<<"\n god rozhdeniya: ";cin>>hum.godr;
		cout<<"\n god okonchaniya: ";cin>>hum.godo;
	    cout<<"\n  nuzhda v obshage:";cin>>hum.ob;

	   fwrite(&hum,sizeof(hum),1,outf);
	   


		cout<<"\n Attestat: ";
		for(n=0;n<4;n++)
		{
			cout<<"\n Predmet: "<<n+1<<" ";strcpy(ozf.predmeta[n],"          ");cin>>ozf.predmeta[n];
			cout<<"\n ocenka: "<<n+1<<" ";cin>>ozf.balla[n];
		}
		cout<<"\n Vstupitel'niye: ";
		for(n=0;n<3;n++)
		{
			cout<<"\n Predmet: "<<n+1<<" ";strcpy(ozf.predmetv[n],"          ");cin>>ozf.predmetv[n];
			cout<<"\n ocenka: "<<n+1<<" ";cin>>ozf.ballv[n];
		}

			cout<<"\n  ozenki v attestate:";
		
		for (n=0;n<4;n++)
		{
			cout<<"\n"<<ozf.predmeta[n]<<" "<<ozf.balla[n];
		}
		cout<<"\n  vstupit ozenki:";
		for (n=0;n<3;n++)
		{
			cout<<"\n"<<ozf.predmetv[n]<<" "<<ozf.ballv[n];
		}
		
	fwrite(&ozf,sizeof(ozf),1,outs);
}
fclose(outs);
fclose(outf);
    

outf=fopen("family.txt","r");


fseek(outf,0,0);

fread(&hum,sizeof(hum),1,outf);	

while(!feof(outf)){


cout<<"\n familiy: "<<hum.F;
cout<<"\n name: "<<hum.N;
cout<<"\n otchestvo: "<<hum.O;
cout<<"\n god rozhdeniya: "<<hum.godr;
cout<<"\n god okonchaniya: "<<hum.godo;
cout<<"\n  nuzhda v obshage:"<<hum.ob;
	
fread(&hum,sizeof(hum),1,outf);		
	
}

 fclose(outf); 

outs=fopen("ozenki.txt","r");

fseek(outs,0,0);
fread(&ozf,sizeof(ozf),1,outs);	
 
while(!feof(outs))
{
		cout<<"\n  ozenki v attestate:";
		
		for (n=0;n<4;n++)
		{
			cout<<"\n"<<ozf.predmeta[n]<<" "<<ozf.balla[n];
		}
		cout<<"\n  vstupit ozenki:";
		for (n=0;n<3;n++)
		{
			cout<<"\n"<<ozf.predmetv[n]<<" "<<ozf.ballv[n];
		}
fread(&ozf,sizeof(ozf),1,outs);	
	
}
 fclose(outs);

	return 0;
}
проблема тут struct oz, в первый байт с ошибкой данные пишутся

и проблема при считывании ,прога вылетает
BloodMaX вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
проблемы с записью дисков iamramirez Компьютерное железо 12 20.11.2009 07:18
ошибка при чтении файла ongleb Общие вопросы C/C++ 17 30.07.2009 13:48
ошибка при чтении файла Alik-Soldier Общие вопросы C/C++ 1 31.05.2009 20:44
Проблемы с записью в файл ROD Общие вопросы C/C++ 9 03.04.2009 12:32
Ошибка при чтении БД из файла!! sting БД в Delphi 4 14.12.2008 22:23