Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 74, средняя оценка - 4.70
spartak17
0 / 0 / 0
Регистрация: 22.10.2006
Сообщений: 7
#1

Как задать динамически массив? - C++

10.11.2006, 00:25. Просмотров 9317. Ответов 7
Метки нет (Все метки)

Как задать динамически массив? Какой заголовчный файл необходим?
Int *B=new A[n]
n=100
Заработает ли?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.11.2006, 00:25
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как задать динамически массив? (C++):

Как динамически создать массив из динамически конструируемых экземпляров класса?
Есть два класса.Подразумевается ,что первый в конструкторе выделяет интовый...

Как задать динамически массивы ?
Как задать динамически массив? Какой заголовчный файл необходим? Int *B=new A...

Как динамически задать Свойство Default класса CButton
Как свойство командной кнопки сделать = Default при изменении значения в...

Массив: Как можно задать и вывести симметричный двумерный массив?
как можно задать и вывести симметричный массив

Как вернуть динамически растущий массив из функции?
Подскажите плиз, может кто знает, не могу вернуть ни ссылку ни указатель на...

Как динамически обьявить многомерный массив (ptr = new int[5][5])?
как обявить вот такую вот штуку: int * ptr = new int; заранее благодарен...

7
Vyacheslav
10.11.2006, 00:42 #2
сам скомпилировать не пробовал?
посмотри топик ниже - "о длинне массива". В C++ нет динамических массивов, есть альтернатива - классы из STL.
В любом случае, размер массива определяется на этапе компиляции.
Если переменная n у тебя глобальная или локальная с статическим классом памяти, и неинициализированна, тогда такая строка предполагает создание массива с длинной 0, так как такие переменные неинициализированные явно получают default значения 0. Если n - локальная с автоматическим классом памяти, тогда, при отсутствии инициализации, переменная содержит случайное число и какой размер массива ты получишь - вообще неизвестно.
spartak17
0 / 0 / 0
Регистрация: 22.10.2006
Сообщений: 7
10.11.2006, 02:44  [ТС] #3
Спасибо! Значит буду изучать классы из stl.
0
bazile
65 / 41 / 68
Регистрация: 15.03.2007
Сообщений: 6,909
10.11.2006, 12:44 #4
Вячеслав немного погорячился насчет отутствия динамических массивов. Они есть. Однако он совершенно прав насчет STL.
Никаких особых заголовочных файлов для работы с динамическими массивами не нужно. Код тут совершенно простой:
int size = 100;
int* array = new int[size];
....
delete[] array;
0
Vyacheslav
10.11.2006, 16:58 #5
Я просто подумал, что под динамическими массивами понимались массивы с изменяемым размером. Т.е. создав массив - потом изменять его размер. Динамические массивы я всегда понимал в таком контексте. А, иначе, в каком смысле они могут быть динамическими? На это меня подтолкнула строка у spartak17 :
C++
1
int * B = new A[n]; n =100;
, где после n=100 размер должен был бы измениться.
bazile
65 / 41 / 68
Регистрация: 15.03.2007
Сообщений: 6,909
10.11.2006, 17:05 #6
А я всегда воспринимал динамический массив как область памяти точный размер которой становится известным на этапе выполнения программы. Но только сейчас понял что не правильно трактовал вопрос spartak17 и поторопился с ответом. Он хотел именно массив с изменяемым размером. В таком контексте твой ответ про STL в самую точку.
0
Vyacheslav
10.11.2006, 17:10 #7
Терминология, однако. Как - то, вот, сложилось у меня такое представление о них(д. массивах).
spartak17
0 / 0 / 0
Регистрация: 22.10.2006
Сообщений: 7
11.11.2006, 01:39  [ТС] #8
Воот картина совершенно прояснилась..А то в университете рассказывали про динамический массив... просто я не так понял... а теперь окончательно разобрался... еще раз спасибо )
0
11.11.2006, 01:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.11.2006, 01:39
Привет! Вот еще темы с решениями:

Как объявить массив динамически, заполнив его случайными числами
Как объявить массив динамически, заполнив его случайными числами

Как создать динамически расширяемый массив объектов пользовательского типа (структура User)?
Здравствуйте, нужна ваша помощь с структурой ... Bот у меня пользователей при...

Как в c++ задать функцию, выводящую массив?
Как в c++ задать функцию, выводящую массив?

Как задать одномерный массив с n вещественными числами?
Перерыла много тем, не могу понять как задать одномерный массив с n...


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

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

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