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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.07.2011, 12:36   #1
sir.andrey
Форумчанин
 
Регистрация: 06.12.2009
Сообщений: 380
Радость Динамические списки С++

Помогите пожалуйста найти ошибку!
В main я заполняю список несколькими числами, но при выводе на экран выводится только один эл-т.

И почему программа так много весит?

ф-ции добавления и вывода на экран:
Код:
void CStack::add( int d )
{
	link* newlink= new link;
	newlink->data=d;

	if( first==NULL && last==NULL ){          //Для создания первого элемента
		newlink->prev=NULL;
		newlink->next=NULL;
		first=newlink;
		last=newlink;
		cout << "q";
	}
	else{									  //Для создания последующих элементов  
		newlink->next=NULL;
		newlink->prev=last;
		last=newlink; cout << "w";
	} 
}

void CStack::show()
{
	link* current=first;
	while( current!=NULL ){
		cout << current->data << endl;
		current=current->next;
	}
}
Вложения
Тип файла: rar linklist.rar (837.3 Кб, 11 просмотров)

Последний раз редактировалось Stilet; 10.07.2011 в 16:06.
sir.andrey вне форума Ответить с цитированием
Старый 10.07.2011, 13:45   #2
l1pton17
Пользователь
 
Аватар для l1pton17
 
Регистрация: 01.11.2010
Сообщений: 75
По умолчанию

когда добавляешь новый элемент, то даешь ему ссылку на предыдущий элемент списка. Но не добалвяешь ссылку на новый элемент предыдущему.
Код:
else{ //Для создания последующих элементов 
 newlink->next=NULL;
 newlink->prev=last;
 last=newlink; cout << "w";
 }
нужно так:
Код:
else{ //Для создания последующих элементов 
 newlink->next=NULL;
 newlink->prev=last;
 newlink->prev->next=newlink;
 last=newlink; cout << "w";
 }
l1pton17 вне форума Ответить с цитированием
Старый 10.07.2011, 14:02   #3
sir.andrey
Форумчанин
 
Регистрация: 06.12.2009
Сообщений: 380
Радость

Большое спасибо!
sir.andrey вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические списки Ольчик Паскаль, Turbo Pascal, PascalABC.NET 4 15.01.2012 14:33
Динамические списки seo-romka Помощь студентам 2 09.03.2011 19:30
динамические списки s.talke.r Паскаль, Turbo Pascal, PascalABC.NET 1 18.12.2010 17:12
Динамические списки Pavelhr Помощь студентам 0 08.01.2010 02:55
Динамические списки Saawa Помощь студентам 4 02.12.2009 18:35