Форум программистов, компьютерный форум CyberForum.ru

Копирование списка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Криво выводит результаты программы в файл http://www.cyberforum.ru/cpp-beginners/thread1045055.html
Приветствую=) Собственно говоря весь вопрос в заголовке. Дело в том что на экран выводит верную информацию а в файл какую-то ерунду. Просьба помочь разобраться)) #include <iostream.h> #include <stdio.h> #include <math.h> #include <stdlib.h> #include <time.h> void vvod (int*a, int n); void vivod (int*a, int n);
C++ передача параметра Здравствуйте, подскажите как в делегат ThraedStart передать параметр, можно ли это сделать вообще? http://www.cyberforum.ru/cpp-beginners/thread1045045.html
Написать формулу на C++ C++
Здравствуйте. Помогите пожалуйста с кодом на эту задачу.
Програма которая выводит слова с парным количеством букв C++
Нужно сделать программу которая выводит слова с парным количеством букв. Слова вводятся через клавиатуру. Нужно сделать на C++.
C++ Разработать функции для работы с комплексными числами http://www.cyberforum.ru/cpp-beginners/thread1045030.html
Ребята, помогите пожалуйста. Сам я не справлюсь. Задание: Разработать функции для работы с комплексными числами: - вывод комплексного числа - сложение к.ч. - умножение к.ч. - вычитание к.ч. - деление к.ч. - перевод к.ч. в тригонометрическую форму из алгебраической - перевод к.ч. алгебраическую форму из тригонометрической
C++ Бинарные ддп собственно, Как они заполняются?( бинарные деревья двоичногго поиска). что передается в ф-ю и как потомьвыводить всё то на экран? точнее, как это будет выглядеть подробнее

Показать сообщение отдельно
Partiship
0 / 0 / 0
Регистрация: 17.12.2013
Сообщений: 4
17.12.2013, 12:27     Копирование списка
Кто может помочь? У меня есть функция которая на основе изначального списка создает список (задом наперед). В итоге мне нужно иметь 2 списка: изначальный и (задом наперед).

Проблема в том, что функция список создает правильно. Но изначальный список становится пустым, чего не должно быть. Как избавиться от этого?

Мне предлагали сделать функцию рекуррентной, но я так и не смог. Как можно решить мою проблему? Буду благодарен.

Код
void reversed(LItem* &list_reversed, LItem* &list)
{
	list_reversed = NULL;
	LItem * buf = list;
	while (buf != NULL)
	{
		LItem *p = buf->next;
		buf->next = list_reversed;
		list_reversed = buf;
		buf = p;
	}
}
p.s.: с этой функцией у меня выводится только один элемент изначального списка.

Вот функция вывода.

Код
void output(LItem* &ListB, LItem* &ListE, LItem* &Elem, int z)
{
	Elem = ListB;
	//cout << "\nДля вывода списка нажмите любую клавишу\n";
	//_getch();
	cout << "\nСформированный список из " << z << " элементов:\n\n";
	while (Elem != NULL)
	{
		cout << Elem->data << endl;
		Elem = Elem->next;
	}
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 20:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru