С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.63/16: Рейтинг темы: голосов - 16, средняя оценка - 4.63
WinRar007
1 / 1 / 0
Регистрация: 08.04.2014
Сообщений: 80
1

Бесконечный массив

03.05.2014, 10:07. Просмотров 3248. Ответов 74
Метки нет (Все метки)

Наверняка тут уже неоднократно спрашивали об этом, но я не смог ничего найти (Ну как всегда, короче), и по этому создал новую тему.
Итак, вопрос: как сделать бесконечный массив? И, желательно, чтоб он был не изначально бесконечный, а расширялся по надобности.
Я так понял, тут от указателей плясать надо, но как ни думал, не допёрло... Плохо думал, видимо.
Заранее спасибо.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.05.2014, 10:07
Ответы с готовыми решениями:

Массив структур. Вышел бесконечный цикл
даже если убрать строку i++, всё равно бесконечно выдаёт одно и тоже ...

Бесконечный цикл
Здравствуйте, кто мне может объяснить почему у меня в этом участке кода...

Бесконечный цикл
Ребят, что-то цикл выполняется постоянно. Покажите ошибку мне/ #include...

Бесконечный цикл while
Здравствуйте необходимо написать бесконечный цикл while , который при запуске...

Бесконечный цикл
#include<iostream> #include "conio.h" using namespace std; void Show(int y,...

74
S_el
2220 / 1683 / 354
Регистрация: 15.12.2013
Сообщений: 6,694
03.05.2014, 10:13 2
WinRar007, как вы себе представляете бесконечный массив?

Добавлено через 2 минуты
А так ,я думаю,вам подойдет контейнер vector.
1
Doctor Nano
Cандальная шляпа
42 / 42 / 36
Регистрация: 12.01.2012
Сообщений: 185
03.05.2014, 10:14 3
Может через списки сделать?
1
TenGen
Будущее рядом
99 / 98 / 48
Регистрация: 06.03.2014
Сообщений: 342
03.05.2014, 10:16 4
WinRar007, сделайте динамический список (однонаправленный, например). Занимались списками?
1
WinRar007
1 / 1 / 0
Регистрация: 08.04.2014
Сообщений: 80
03.05.2014, 10:20  [ТС] 5
Занимались списками?
контейнер vector
Мда, я ещё тупее, чем я думал... Нет, не занимался, и что такое "Vector" не знаю.
как вы себе представляете бесконечный массив?
Можно управлять любым количеством элементов (Да, у всего есть границы, но они большие, и мне их хватит)
0
TenGen
Будущее рядом
99 / 98 / 48
Регистрация: 06.03.2014
Сообщений: 342
03.05.2014, 10:29 6
WinRar007, суть: список представляет собой кучу элементов, связанных между собой

C++
1
2
3
4
5
struct element
{
    int value; // Здесь хранится значение элемента списка
    element *next; // Указатель на следующий элемент списка
};
Размер при этом само собой не ограничен, можно свободно удалять и добавлять элементы в любое место списка. Советую реализовать вручную, что бы понять принцип работы списков
0
0x10
2580 / 1759 / 289
Регистрация: 24.11.2012
Сообщений: 4,391
03.05.2014, 10:31 7
Цитата Сообщение от WinRar007 Посмотреть сообщение
Нет, не занимался, и что такое "Vector" не знаю.
http://www.cplusplus.com/reference/vector/vector/

Добавлено через 47 секунд
Цитата Сообщение от TenGen Посмотреть сообщение
Советую реализовать вручную
И вектор тоже. И вообще всю stl...
2
WinRar007
1 / 1 / 0
Регистрация: 08.04.2014
Сообщений: 80
03.05.2014, 10:33  [ТС] 8
добавлять элементы в любое место списка
Проблема в том, что если я создаю переменную.
C++
1
int tralala;
То я не смогу создать бесконечность переменных "tralala", ведь я уже создал её. То есть, по сути, бесконечный массив - это тоже не обязательное условие. Мне нужна возможность создавать и создавать переменную одного и того же типа "бесконечно".
0
TenGen
Будущее рядом
99 / 98 / 48
Регистрация: 06.03.2014
Сообщений: 342
03.05.2014, 10:34 9
0x10, вы хотите, что бы человек не имел понятия, что вообще представляет из себя список? Хорошо, пусть он думает, что однонаправленный список это "чудесный" вектор из stl, который работает посредством бороды хоттабыча.
0
WinRar007
1 / 1 / 0
Регистрация: 08.04.2014
Сообщений: 80
03.05.2014, 10:35  [ТС] 10
С массивом просто удобней обращаться к ним.
0
TenGen
Будущее рядом
99 / 98 / 48
Регистрация: 06.03.2014
Сообщений: 342
03.05.2014, 10:36 11
WinRar007, в списке выделяется динамическая память для элемента и она связывается со списком. То есть к цепочке элементов добавляется еще один, в котором хранится нужное число
1
0x10
2580 / 1759 / 289
Регистрация: 24.11.2012
Сообщений: 4,391
03.05.2014, 10:36 12
TenGen, про "написать все самому" я говорил без иронии. Разве что с небольшим преувеличением.
2
WinRar007
1 / 1 / 0
Регистрация: 08.04.2014
Сообщений: 80
03.05.2014, 10:45  [ТС] 13
в списке выделяется динамическая память для элемента и она связывается со списком. То есть к цепочке элементов добавляется еще один, в котором хранится нужное число
О, зря я сюда со своими знаниями полез... Надо почитать, что такое динамическая память...
добавляется еще один
Список-то бесконечный, а элементы бесконечно ты создавать не сможешь.
C++
1
2
3
4
for(int ii = 0; i < 1000; ii++)
{
     int i = 0;
}
Вряд ли после такого цикла у нас будет тысяча переменных типа int.

Добавлено через 2 минуты
Переформулирую вопрос: как бесконечно штамповать переменные и засовывать их в массив?
0
0x10
2580 / 1759 / 289
Регистрация: 24.11.2012
Сообщений: 4,391
03.05.2014, 10:45 14
Цитата Сообщение от WinRar007 Посмотреть сообщение
Вряд ли после такого цикла у нас будет тысяча переменных типа int.
Не будет, конечно.
В общем, тут правильным шагом будет взять какую-нибудь умную книжку про структуры данных и алгоритмы.
3
TenGen
Будущее рядом
99 / 98 / 48
Регистрация: 06.03.2014
Сообщений: 342
03.05.2014, 10:47 15
WinRar007, как было у меня
C++
1
2
3
4
for (int i = 0; i < 1000; i++)
{
list.add(i); // Тут функция добавления нового элемента в список, а list - экземпляр класса списка
}
У вас к концу цикла накопится 1000 элементов в списке
1
WinRar007
1 / 1 / 0
Регистрация: 08.04.2014
Сообщений: 80
03.05.2014, 10:49  [ТС] 16
В общем, тут правильным шагом будет взять какую-нибудь умную книжку про структуры данных и алгоритмы.
Проблема в том, что мне это с сегодня на завтра надо.

Добавлено через 1 минуту
list.add(i);
Можно эту процедуру в раскрытии показать?
0
0x10
2580 / 1759 / 289
Регистрация: 24.11.2012
Сообщений: 4,391
03.05.2014, 10:51 17
Цитата Сообщение от WinRar007 Посмотреть сообщение
Проблема в том, что мне это с сегодня на завтра надо.
Если прям припекло, то берем std::vector и используем... С обязательным "TODO: реализовать самому когда-нибудь". Пример использования можно посмотреть тут: http://en.cppreference.com/w/cpp/container/vector/push_back
1
Kuzia domovenok
2421 / 2151 / 525
Регистрация: 25.03.2012
Сообщений: 7,756
Записей в блоге: 1
03.05.2014, 10:59 18
TenGen, да не объясняй ты ему, что такое списки! Человек ищет лёгких путей. Более того, сам факт того, что он задал именно этот вопрос говорит о том, что он не с того конца решает возникшую перед ним задачу. Ну не так мыслят программисты.
Заметь, саму свою задачу он почему-то скрывает. Но после того как у него возникло его "гениальное" решение создать бесконечный массив, он упёрся в него и только о нём и спрашивает! Хотя сама-то задача, возможно, решается без каких-либо массивов вообще! Может у него там какой-нибудь подсчёт чисел Фибоначчи или суммы бесконечных рядов...
0
WinRar007
1 / 1 / 0
Регистрация: 08.04.2014
Сообщений: 80
03.05.2014, 11:08  [ТС] 19
Кхм-кхм...
С массивом просто удобней обращаться к ним.
Переформулирую вопрос: как бесконечно штамповать переменные и засовывать их в массив?
Не перегибайте, сударь.

Добавлено через 54 секунды
Мне надо штамповать переменные моего класса. И усё!
0
taras atavin
4205 / 1768 / 211
Регистрация: 24.11.2009
Сообщений: 27,565
03.05.2014, 11:09 20
Цитата Сообщение от WinRar007 Посмотреть сообщение
Итак, вопрос: как сделать бесконечный массив?
Ни как.

Добавлено через 55 секунд
Цитата Сообщение от WinRar007 Посмотреть сообщение
Наверняка тут уже неоднократно спрашивали об этом,
Нет, остальные сами догадались, что если объём памяти выражается числом, то он конечен.
0
03.05.2014, 11:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.05.2014, 11:09

Бесконечный вывод :(
Я написал программу телефонной книги. И когда в номере телефона я пишу больше,...

Бесконечный цикл
Простите что с таким лёгким вопросом, но мистика окутывает мою учёбу всё больше...

Бесконечный цикл
При вводе данных в консоли начинается бесконечный цикл, помогите исправить...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

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