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

Списки:нужны или нет? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Путь символа http://www.cyberforum.ru/cpp-beginners/thread944099.html
Здорова господа! Есть интересная задачка: "Проследите путь символа в вашей системе от клавиатуры до экрана на примере следующего кода:" char c; cin >>c; cout <<c<<endl; И как же его проследить????
C++ Ошибка: "case label not within a switch statement" Здравствуйте, работая с оператором switch произошла ошибка case label '1' not within a switch statement case label '1' not within a switch statement case label '1' not within a switch statement Вот код std::cin >> pEnter; http://www.cyberforum.ru/cpp-beginners/thread944082.html
C++ Время для функции генерирующей случайные величины
я написал функцию которая генерирует случайные величины в промежутке valarray<double> cRand::base_rnd(size_t N){ valarray<double> v; v.resize(N); int x,y; int x0 = time(0); x = fabs((a*x0 + c)%M); v = double(x)/M; for(size_t i = 1;i<N;i++){
Конструктор класса C++
class A{}; class B : public A { B(); }; B::B() : A() /// ДЛЯ ЧЕГО ТУТ :A() И ЧТО ЭТО ОЗНАЧАЕТ??? { }
C++ Конструктор класса http://www.cyberforum.ru/cpp-beginners/thread944075.html
Я не могу понять вот эту запись class A{}; class B : public A {
C++ Чат на C++ Дочитываю книгу Дейтлов с++ и хочу закрепить знания написанием много функционального чата на с++ (с админкой и тд). Сервер будет написан на Java (уже есть заготовки), а вот с чего начать написание клиента не знаю. Вообщем прошу помочь с выбором библиотек ... Нужно: ГУЯ Многопоточность Сокеты (не просто чистые сокеты) Добавлено через 45 секунд А да и работа с СУБД подробнее

Показать сообщение отдельно
mrKi
2 / 2 / 0
Регистрация: 01.08.2013
Сообщений: 60

Списки:нужны или нет? - C++

26.08.2013, 23:00. Просмотров 509. Ответов 12
Метки (Все метки)

Стоит ли изучать связные списки,они используются в дальнейшем? Может я туповат, но алгоритм их построения понять не могу. Уж больно все запутанно описывается в книжке. Пытался сам разбираться ,вот что вышло
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
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>
using namespace std;
 
class part
{
      public:
             part *next;
             int item;
};
 
class head:public part
{
      public:
             head(){this->next=0;this->item=0;}
             head(part*a){next=a;}
             ~head(){}
};
class end:public part
{
      public:
             end(){next=0;item=0;}
             ~end(){}
};
 
int main()
{
    part *head=new part,*temp,*p=new part;
    head->next=p;
    int i;
    while(true)
    {
          cout<<"Ââåäèòå ÷èñëî(0 ÷òîáû âûéòè): ";
          cin>>i;
          if(i==0) 
          {
          p=new end;
          break;
          }
          else
          {
          p->item=i;
          p->next=new part;
          p=p->next;
          }
    }
    p=head->next;   
    while(true)
    {
           if (p->next==0) 
           break;
           cout<<endl<<p->item;
           p=p->next;
    }
    cout<<endl;
    system("pause");
    return 0;
};
Код зацикливается,почему?
Второй вариант,что ниже, в нем зацикливания нету, но при этом последний выводимый элемент-левый.
Связанно с тем,что не
C++
1
 p=new end;
а
C++
1
p->next =new end;
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
46
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>
using namespace std;
 
class part
{
      public:
             part *next;
             int item;
};
 
class head:public part
{
      public:
             head(){this->next=0;this->item=0;}
             head(part*a){next=a;}
             ~head(){}
};
class end:public part
{
      public:
             end(){next=0;item=0;}
             ~end(){}
};
 
int main()
{
    part *head=new part,*temp,*p=new part;
    head->next=p;
    int i;
    while(true)
    {
          cout<<"Ââåäèòå ÷èñëî(0 ÷òîáû âûéòè): ";
          cin>>i;
          if(i==0) 
          {
          p->next=new end;
          break;
          }
          else
          {
          p->item=i;
          p->next=new part;
          p=p->next;
          }
    }
    p=head->next;   
    while(true)
    {
           if (p->next==0) 
           break;
           cout<<endl<<p->item;
           p=p->next;
    }
    cout<<endl;
    system("pause");
    return 0;
};
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru