![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 12.10.2007
Сообщений: 19
|
![]()
Как создать двумерный динамический массив?
|
![]() |
![]() |
![]() |
#2 |
Павел Сергеевич
Форумчанин
Регистрация: 05.11.2006
Сообщений: 665
|
![]()
var
massiv: array of array of integer
Познавая других, мы познаем себя.
С'est la vie... |
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 02.09.2007
Сообщений: 1,193
|
![]() Код:
Последний раз редактировалось _Dmitry; 23.10.2007 в 11:29. |
![]() |
![]() |
![]() |
#4 |
Участник клуба
Регистрация: 02.09.2007
Сообщений: 1,193
|
![]()
В отличии от статического массива, который всегда прямоугольный, размерность динамического массива может быть сложной. Тогда выделять память нужно следующим образом:
SetLength(M,5); SetLength(M[0],4); SetLength(M[1],1); SetLength(M[2],3); SetLength(M[3],2); SetLength(M[4],5); В результате массив будет следующим: * * * * * * * * * * * * * * * Например, элемента M[1,1] не существует (индексация с 0!!!). |
![]() |
![]() |
![]() |
#5 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
![]()
выглядит устрашающе
![]()
пыщь
|
![]() |
![]() |
![]() |
#6 |
Регистрация: 21.10.2007
Сообщений: 8
|
![]()
А обязательно добавлять "M:=NIL;"?
|
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 02.09.2007
Сообщений: 1,193
|
![]()
Можно не добавлять, память освобождается автоматически, как при завершении программы, так и при выполнении SetLength при задании новых размеров
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 16.10.2009
Сообщений: 42
|
![]()
А в процедуре не получилось объявить двумерный дин. массив.
пишу вот так: procedure ReadFile(filename: string; var data: array of array of string); ругается( |
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
объявить можно, но изменять его не выйдет.
можно сделать как и с обычными(читай одномерными массивами) через типизацию type Mas=array of array of integer; так и можно попробывать через указатели. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 16.10.2009
Сообщений: 42
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Двумерный Массив | n01R | Помощь студентам | 9 | 19.12.2009 16:41 |
Двумерный массив... | slim5 | Помощь студентам | 2 | 20.06.2008 23:16 |
Двумерный массив в С++ | Draid | Помощь студентам | 2 | 07.03.2008 22:06 |
Двумерный массив | Jodu | Помощь студентам | 18 | 05.12.2007 22:44 |