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

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

Войти
Регистрация
Восстановить пароль
 
Leoleshucov008
13 / 13 / 1
Регистрация: 23.02.2010
Сообщений: 221
#1

Указатель на список в элементе списка - C++

09.03.2013, 12:06. Просмотров 281. Ответов 8
Метки нет (Все метки)

Есть реализация списка с помощью структуры описывающей указатель на список, и структуры одного элемента списка.
Нужно что бы в элементе списка был указатель на другой список. Но проблема в объявлении типов. Как можно реализовать такое?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//Узел списка
typedef struct list {
    struct list *previous;
    char val;
    list_exm* more;
    struct list *next;
} node;
 
 
//Список
typedef struct {
    int size;
    node *first;
} list_exm;
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2013, 12:06     Указатель на список в элементе списка
Посмотрите здесь:

Организовать ввод в однонаправленный список, узел списка состоит из двух полей: целое число и указатель - C++
Здравствуйте, нужна ваша помощь!!! Нужно написать программу Организовать ввод в однонаправленный список. Узел списка состоит из двух...

Организовать ввод в однонаправленный список. Узел списка состоит из двух полей: целое число и указатель. Не - C++
Организовать ввод в однонаправленный список. Узел списка состоит из двух полей: целое число и указатель. Необходимо добавить узел после...

Два значения в одном элементе списка - C++
Подскажите как в сделать односвязный список, чтобы при добавление элемента добавлялись два значения?

Как в элементе управления CListCtrl поймать нажатие определенной клавиши на элементе? - C++
Поймать нажатие клавиши вообще - несложно: BOOL CSysbackupDlg::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult) { ...

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

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

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
09.03.2013, 13:03     Указатель на список в элементе списка #2
Добавьте в начало предварительное объявление :
C++
1
struct list_exm;
Возможно придется добавить struct в 5 строку.
Desu_Is_A_Lie
62 / 62 / 3
Регистрация: 26.02.2012
Сообщений: 114
09.03.2013, 13:03     Указатель на список в элементе списка #3
Forward declaration:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
struct list_exm;
 
//Узел списка
struct node {
    struct list *previous;
    char val;
    list_exm* more;
    struct list *next;
};
 
 
//Список
struct list_exm{
    int size;
    node *first;
};
От typedef вообще лучше избавиться, это пережиток C (там надо было при объявлении каждой переменной-структуры писать struct).
Leoleshucov008
13 / 13 / 1
Регистрация: 23.02.2010
Сообщений: 221
09.03.2013, 13:29  [ТС]     Указатель на список в элементе списка #4
Desu_Is_A_Lie, пишет Too many types in declaration.
Desu_Is_A_Lie
62 / 62 / 3
Регистрация: 26.02.2012
Сообщений: 114
09.03.2013, 13:41     Указатель на список в элементе списка #5
В MSVC проблем нет. Вы точно собираете C++ проект, а не C?
И кусок кода хорошо было бы увидеть.
OhMyGodSoLong
~ Эврика! ~
1243 / 992 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
09.03.2013, 13:50     Указатель на список в элементе списка #6
Скорее, он так и не убрал тайпдефы.

Не по теме:

Лучшая реализация связных списков на структурах, что я видел, — в ядре Linux. После неё любые попытки сделать как-то по-другому выглядят для меня ужасно.

Leoleshucov008
13 / 13 / 1
Регистрация: 23.02.2010
Сообщений: 221
09.03.2013, 13:55  [ТС]     Указатель на список в элементе списка #7
Цитата Сообщение от Desu_Is_A_Lie Посмотреть сообщение
В MSVC проблем нет. Вы точно собираете C++ проект, а не C?
И кусок кода хорошо было бы увидеть.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <conio.h>
#include <stdio.h>
#include <alloc.h>
 
// Глобальные переменные
struct list_exm;
// Узел списка
struct node {
    node *previous;
    char val;
    list_exm* more;
    node *next;
}
 
// Список
struct  list_exm{//Ругается на эту строчку
    int size;
    node *first;
};
Собираю в Embarcadero Rad Studio 2010, проект c++, хоть и пишу на Си.
Desu_Is_A_Lie
62 / 62 / 3
Регистрация: 26.02.2012
Сообщений: 114
09.03.2013, 14:01     Указатель на список в элементе списка #8
В 13 строчке после } пропущена ;.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.03.2013, 14:04     Указатель на список в элементе списка
Еще ссылки по теме:

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

Шаблон класса двусвязного списка, метод, возвращающий указатель - C++
Пишу шаблон класса двусвязного списка. Всё в хедере. В классе присутствует структура item. Пытаюсь написать метод, возвращающий указатель...

Списки структур. Указатель на узел другого списка внутри структуры - C++
Имеется следующий кусок кода: struct date { int day; int month; int year; }; /* Пациент */

Шаблон двухсвязный список, храним указатель не элемент - C++
#include &lt;cstdlib&gt; #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &quot;DSpisok.h&quot; using namespace std; int main(int argc, char...


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

Или воспользуйтесь поиском по форуму:
Leoleshucov008
13 / 13 / 1
Регистрация: 23.02.2010
Сообщений: 221
09.03.2013, 14:04  [ТС]     Указатель на список в элементе списка #9
Цитата Сообщение от Desu_Is_A_Lie Посмотреть сообщение
В 13 строчке после } пропущена ;.
Точно.
Yandex
Объявления
09.03.2013, 14:04     Указатель на список в элементе списка
Ответ Создать тему
Опции темы

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