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

Динамические массивы - C++

Восстановить пароль Регистрация
 
GhostVIRUS
 Аватар для GhostVIRUS
6 / 6 / 0
Регистрация: 17.09.2011
Сообщений: 81
12.11.2011, 21:30     Динамические массивы #1
Объясните пожалуйста что такое динамические массивы. Это массивы с не константным количеством элементов? Если так, то как их объявлять?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2011, 21:30     Динамические массивы
Посмотрите здесь:

Динамические массивы C++
C++ Динамические массивы С++
C++ динамические массивы ?
Динамические массивы C++
C++ Динамические массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Dekio
Фрилансер
Эксперт C++
 Аватар для Dekio
5816 / 1214 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
12.11.2011, 21:32     Динамические массивы #2
C++
1
int *arr = new int [n];
C
1
int *arr = (int*) malloc (sizeof(int*)*n);
n - количество элементов
Jupiter
12.11.2011, 21:35
  #3

Не по теме:

Dekio, размер указателя зачем ?

Цитата Сообщение от Dekio Посмотреть сообщение
sizeof(int*)
массив то одномерный

GhostVIRUS
 Аватар для GhostVIRUS
6 / 6 / 0
Регистрация: 17.09.2011
Сообщений: 81
12.11.2011, 21:35  [ТС]     Динамические массивы #4
Я не дружу с указателями. Т.к. пока ними не пользуюсь. Но я так понял это массив в динамической памяти?
Dekio
Фрилансер
Эксперт C++
 Аватар для Dekio
5816 / 1214 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
12.11.2011, 21:38     Динамические массивы #5
Jupiter, не имеет разницы. В любом случае программа считает n*4;
Jupiter
12.11.2011, 21:40
  #6

Не по теме:

Dekio, слишком самонадеянно

Dekio
12.11.2011, 21:42
  #7

Не по теме:

Цитата Сообщение от Jupiter Посмотреть сообщение
Dekio, слишком самонадеянно
Если на все 100% знать что ты делаешь, то нет

GhostVIRUS
12.11.2011, 21:45  [ТС]
  #8

Не по теме:

Может мне кто-то в конце концов объяснит?!

mc.Duck
Заблокирован
12.11.2011, 21:46     Динамические массивы #9
Динамические массивы - массивы данных, размерность которых устанавливается динамически, то есть во время работы программы.
Динамические массивы могут оказаться полезны в программах, требующих ввода от пользолвателя
неких данных.

В Pascal / Delphi это можно реализовать вот таким вот путем:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
...
var mass:array of integer;
mass2:array of array of integer;
begin
SetLength(mass,5);                  //mass в диапазоне от 0 до 4!
mass[4]:=10;
SetLength(mass2,2);               // mass2 в диапазоне от 0 до 4! 
SetLength(mass[0],5);            //Для каждой строчки двумерной матрицы заводим свою размерность!
SetLength(mass[1],7);      
mass2[1,1]:=5;      
end; 
...
GhostVIRUS
 Аватар для GhostVIRUS
6 / 6 / 0
Регистрация: 17.09.2011
Сообщений: 81
12.11.2011, 21:47  [ТС]     Динамические массивы #10
То есть массивы с неограниченным количеством элементов?
Dekio
Фрилансер
Эксперт C++
 Аватар для Dekio
5816 / 1214 / 214
Регистрация: 23.11.2010
Сообщений: 3,378
Записей в блоге: 1
12.11.2011, 21:49     Динамические массивы #11

Не по теме:

mc.Duck, каким местом динамические массивы Delphi имеют отношение к языку С++ ?



Добавлено через 50 секунд
GhostVIRUS, неограниченного количества элементов не выйдет.
Все зависит от объема памяти
GhostVIRUS
 Аватар для GhostVIRUS
6 / 6 / 0
Регистрация: 17.09.2011
Сообщений: 81
12.11.2011, 21:50  [ТС]     Динамические массивы #12
Хм... А этот массив может менять количество элементов?
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
12.11.2011, 21:52     Динамические массивы #13
GhostVIRUS, Понимание для чего вообще нужны указатели?
mc.Duck
Заблокирован
12.11.2011, 22:48     Динамические массивы #14
GhostVIRUS, да, может менять кол-во элементов, но тогда он обнуляется, то есть все данные в нем сгорают.

Добавлено через 28 секунд
GhostVIRUS, в этом все и фишка динамики)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.11.2011, 07:46     Динамические массивы
Еще ссылки по теме:

Динамические массивы: C++
C++ динамические массивы
динамические массивы C++

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

Или воспользуйтесь поиском по форуму:
silent_1991
Эксперт C++
4938 / 3014 / 149
Регистрация: 11.11.2009
Сообщений: 7,024
Завершенные тесты: 1
13.11.2011, 07:46     Динамические массивы #15

Не по теме:

Цитата Сообщение от Dekio Посмотреть сообщение
Если на все 100% знать что ты делаешь, то нет
Не факт, что на протяжение всего времени существования языка размер указателя будет равен 4-м байтам. Поэтому всё же так делать не надо. Да и нелогично это.



Добавлено через 3 минуты

Не по теме:

А, ну и плюс к этому стоит изменить тип и забыть убрать звёздочку - и получим беду в рантайме.

Yandex
Объявления
13.11.2011, 07:46     Динамические массивы
Ответ Создать тему
Опции темы

Текущее время: 20:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru