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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.12.2010, 15:28   #1
mansp
Пользователь
 
Регистрация: 27.10.2010
Сообщений: 52
Вопрос Struct

Код:
struct date 
	{
		int year;
		int month;
		int day;
	};
struct Pinfo
{
	char name_stud [20];
	char surnamre_stud [20];
	int age ;
	char sex [6];
};
struct StudentPers
{
	struct Pinfo student;
	struct date birth;

	int zalic ;
	char group [5];
	char faculty [30];
	
}student [10], *sptr=&student;

void Func_2(void)
{
	cout<<"\nPlease, enter a eyar of birth";
	for (int i=0; i!=10;i++)
	{
		cin>>student[i].birth.year;
		
	}
}
мне надо вывести масив структуры на экран при помощи указателя
но только при создании этого указателя вылазит ошибка=((
и как вообще можно вывести такой масив с помощью указателя?
может следует создавать указатели для каждого элемента структуры?

Последний раз редактировалось mansp; 05.12.2010 в 15:31.
mansp вне форума Ответить с цитированием
Старый 05.12.2010, 15:45   #2
mansp
Пользователь
 
Регистрация: 27.10.2010
Сообщений: 52
По умолчанию

все разобрался))) намудрил я чёт сильно
есть ещё одн вопрос по структуре этой структуре.
как происходить запись масива структуры в файл и чтение его в новый масив??
mansp вне форума Ответить с цитированием
Старый 05.12.2010, 16:07   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Ну в fread, fwrite например ты указываешь (примерно так):
Код:
fwrite(&student,sizeof(StudentPers)*10,1,Файловая_переменная)
Вот пример: http://www.programmersforum.ru/showthread.php?t=105501
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.12.2010, 19:04   #4
Syuf
Форумчанин
 
Аватар для Syuf
 
Регистрация: 02.02.2010
Сообщений: 599
По умолчанию

Цитата:
cin>>s[i].str;
Попробуйте так:
Код:
cin.getline(s[i].str, 50);
http://www.cplusplus.com/reference/i...tream/getline/

Это должно быть вон там

********| * | * |
********| * | * |
********| * | * |
******* \/* \/* \/
"Лишь то читается легко, что написано с трудом; что в час написано, то в час и позабыто."

Последний раз редактировалось Syuf; 05.12.2010 в 19:09.
Syuf вне форума Ответить с цитированием
Старый 05.12.2010, 20:00   #5
mansp
Пользователь
 
Регистрация: 27.10.2010
Сообщений: 52
По умолчанию

и последне
у меня трабли ещо с одной структурой((
Код:
void Func_3(void)
{
	struct Some
	{
		char str[50];
		int a, b;     
	} ; 
	struct Some s[3]={"one", 5, 15};
	for(int i=1;i!=3;i++)
	{
		cin>>s[i].str;
	}
	srand((unsigned) time(NULL));
	for(int i=1;i!=3;i++)
	{
		struct Some*p=&s[i];
		
		cout<<p->str<<" ";
		p->a=rand()%10;
		cout<<p->a<<endl<<" ";
		
		p->b=rand()%10;
		cout<<p->b<<" ";

	}
в данной функции масив структуры инициализирован, при компиляции с++ ошибок не выдаёт а вот при работе програмы строку
Код:
cin>>s[i].str;
просто пропускает(( в чём я ошибся то?
mansp вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Односторонний динамический список (struct) 100lnikov Общие вопросы C/C++ 0 28.02.2010 13:23
Вопрос по Struct cheblya Общие вопросы C/C++ 2 06.11.2009 11:42
STRUCT() alexov Общие вопросы C/C++ 1 13.01.2009 18:13
struct и файлы bondik Общие вопросы C/C++ 7 07.11.2008 08:13
struct vs MASM format Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 4 09.05.2008 17:54