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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
le_bon_garcon
0 / 0 / 0
Регистрация: 17.05.2011
Сообщений: 3
#1

О связном списке - C++

08.06.2011, 19:48. Просмотров 330. Ответов 0
Метки нет (Все метки)

Собственно нужно реализовать связный список при помощи структур. Реализовал, но проблема с очисткой этого самого списка и печатью.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#include <stdio.h>
#include <math.h>
 
struct tnode
{
    int data;
    tnode *next;
    tnode (int val) : data(val),next(NULL) {};
 
};
 
tnode* addNode(tnode* el,int val)
{
    tnode *temp = new tnode(val);
    temp -> next = el -> next;
    el -> next = temp;
    return temp;
};
 
 
void clear(tnode* el)
{
    tnode *temp = el -> next;
    while (temp != NULL)
    {
        temp -> data = 0;
        tnode *t2 = temp ->next;
        delete temp;
        temp = t2;
    }
    temp -> data = 0;
};
 
void print(tnode* el)
{
    if ( el ->next == NULL ) {printf("  *** List is empty ***\n"); return;} //это не работает и он все равно пытается напечатать
 
    tnode *temp = el;
    while ( temp->next != NULL)
    {
        printf(" %i ->",temp -> data);
        temp = temp -> next;
    }
    printf(" NULL\n");
};

Если список пуст, он его не печатает и выдаёт ошибку сегментирования. Где я прокололся? Заранее Спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2011, 19:48     О связном списке
Посмотрите здесь:

Очередь на связном списке - C++
OldTail-&gt;next-&gt;tail; ругается на эту строчку, пишет class QueueNode не содержит члена tail и просмотрите, пожалуйста, остальной код....

Пузырёк на связном списке - C++
Здравствуйте! Не могли Вы подсказать, почему после первого прохождения по списку все остается как было. Т.е. элементы переставляются, но...

непонятка в связном списке - C++
есть 2 конструктора - list(const str&amp;) и list() если в main использую 1ый конструктор, то всё работает, если 2ой - ошибка, всякие там...

Исправить ошибки в связном списке - C++
Почти готовая лабораторка, но не хватает несколько деталей. Помогите решить проблему, пожалуйста! Задание : 1. Создание списка из...

Алгоритм Дейкстры в связном списке + файлы. - C++
Задача такова : Имеются n городов. Некоторые из них соединены дорогами известной длины. Найти кратчайшие маршруты из заданного города в...

Copy-Constructor В Шаблонном Связном списке - C++
Скажіте пожалуйста где тут ошыбка? Добавлено через 49 секунд Ран тайм ерор кидает в копи конструкторе 100% вот код ...

Как удалить узел в связном списке? - C++
привет всем! подскажите пожалуйста в подробностях как происходит удаление узла в алгоритме связного списка ?? #include &quot;stdafx.h&quot; ...

Передать значение из одной функции в другую функцию в связном списке - C++
Как можно передать значение из одной функции в другую функцию в связном списке? Например у меня есть функция поиска максимального...

Коструктор в списке - C++
Извините что неуч и спрашиваю дебильные вопросы. Вот к примеру: обыкновенный двусвязный список, хочу перегрузить конструктор, что бы не...

Удаление в списке - C++
Реализован метод удаления после какого-то элемента в спике: void remove(Node *where) { if (nodes&gt;1 &amp;&amp; where-&gt;next != 0) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru