Форум программистов, компьютерный форум, киберфорум
Наши страницы

Теория/списки - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Записать строки в многомерный символьный массив http://www.cyberforum.ru/cpp-beginners/thread517015.html
Добрый день помогите пожалуйста. Вот есть массив mass, где 255 это длинна строки а 5 это количество строк вот как мне зависти эти самые 5 строк в многомерный массив
C++ Фунции sin и cos Здравствуйте. Начал писать игру, аналог знаменитых Tank Wars. При использовании библиотечных(math.h) функций sin и cos появилась проблема. Обе функции возвращают значение в радианах. И вот... http://www.cyberforum.ru/cpp-beginners/thread517013.html
Составить программу, которая бы по имеющемуся списку призывников в файле... C++
Требуется составить программу, которая бы по имеющемуся списку призывников в файле priziv.txt (строка содержит фамилию призывника, затем через запятую его заболевания) и списку заболеваний в файле...
C++ "общение" потоков
Здравствуйте. Будут два потока. оба получают 2 иттератора (для конкретности vector<int>). нужно: один поток находит число, меньшее данного. Останавливается. Ждёт, пока остановится второй поток....
C++ товарообмен стран http://www.cyberforum.ru/cpp-beginners/thread516899.html
помогите пожалуйста дан файл, содержащий информацию о товарообмене 5и стран в течение 20 лет. под товарообменом понимаются данные об экспорте и импорте из i-ой страны в j-ю. найти все страны у...
C++ текстовый файл помогите пожалуйста Дано два файла, содержащих одинаковое количество целых чисел. перезаписать первый файл следующим образом: если число из второго файла больше соответствующего числа в первом, то... подробнее

Показать сообщение отдельно
Ieroglif
19 / 19 / 1
Регистрация: 23.06.2011
Сообщений: 238

Теория/списки - C++

12.03.2012, 17:02. Просмотров 3099. Ответов 5
Метки (Все метки)

День добрый, форумчане.
У меня вопрос по спискам, точнее - по такой составляющей их как head (голова).

Она(голова), как мне известно, должна указывать на начало списка. В связи с этим и возникает ряд вопросов.

1. Где мы объявляем голову? Нужно/можно ли объявлять её в структуре списка?
C++
1
2
3
4
5
6
7
struct list//описание структуры списка.
{ 
int inf;
list *next;
list *pred;
list *head;
};
Или же можно ставить как глобальную переменную?
C++
1
2
3
4
5
6
7
8
9
10
struct list//описание структуры списка.
{ 
    int inf;
    list *next;
    list *pred;
};
 
list *head;
 
//Далее описание функций работы со списком и прочее
2. Как программа определяет, что данная конструкция должна указывать именно на начало списка (у меня вот она вовсе отказывается это делать).

То есть, если реализовать такой код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
struct list//описание структуры списка.
{ 
    int inf;
    list *next;
    list *pred;
};
 
list *cur;
list *head;
 
void func_cr()//создание списка-1го элемента списка
{
list *pAdd=new list;
cout<<"Создание списка. Введите первый элемент списка (число): ";
cin>>pAdd->inf;
cur=pAdd;
cur->next=NULL;
cur->pred=NULL;
cout<<"\n\nСозданный элемент: "; 
cout<<cur->inf<<"\n\n";
head=cur;
}
... то голова будет (спасибо последней строчке кода) указывать на первый и единственный элемент. Если же добавить элементы перед этим, то голова своего значения "не изменит". Это следствие такой фиксации?

Иными словами, как обозначать голову и сделать так, чтобы она всегда указывала на первый элемент списка?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.