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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.04.2013, 20:13   #1
skad0
Пользователь
 
Регистрация: 07.04.2013
Сообщений: 11
По умолчанию Проблема со стеком

*** stack smashing detected ***: ./main terminated
Aborted


Выдает при выполнении вот этого кода(конкретно при вводе *):
Код:
void enter(FILE *f) {
	student st;
	fseek(f,0,SEEK_END);
	cin.get();
	cout<<"Enter * if you want to exit"<<endl;
	while(1) {
		cout<<"Enter name, surname"<<endl;
		cin.getline(st.name,lenname);
		if (!strcmp(st.name,"*")) return;
		cout<<"Enter group name"<<endl;
		cin>>st.gr;
		cout<<"Enter 5 marks"<<endl;
		for(int i=0;i<5;i++,cin>>st.m[i]);
		fwrite(&st,size_el,1,f);
		cin.get();
	}
}
не понимаю в чем проблема.
skad0 вне форума Ответить с цитированием
Старый 16.04.2013, 02:31   #2
skad0
Пользователь
 
Регистрация: 07.04.2013
Сообщений: 11
По умолчанию

РЕШЕНО
for(int i=0;i<5;i++,cin>>st.m[i]);
заменить на
for(int i=0;i<5;cin>>st.m[i++,]);

в первом варианте пропускается 0 элемент и записывается лишний
skad0 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа со стеком ksu04061992 Помощь студентам 0 28.05.2012 01:37
проблема со стеком ruslan_k1 Помощь студентам 6 29.09.2010 15:18
Проблема со стеком в проге на ассемблере T(h)rasher Помощь студентам 23 26.09.2010 17:18
Работа со стеком,С++ Singularity Помощь студентам 0 04.05.2010 19:31
работа со стеком xarvenx Общие вопросы C/C++ 1 25.06.2009 13:31