|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.09.2009, 20:42 | #1 |
Форумчанин
Регистрация: 06.04.2009
Сообщений: 124
|
Динамические переменные
Объясните пожалуйста динамические переменные. А еще лучше будет если объясните что такое область определения динамических переменных.
|
06.09.2009, 18:16 | #2 |
Форумчанин
Регистрация: 26.04.2009
Сообщений: 270
|
динамические переменные....это те которые, в процесе программы меняют свой размер(байт).
Ну кпримеру.....ты зарезервировал(назначил) место под переменную....на диски выделилось место переменная^ это будет указатель, он весит (точно не помню)около 4байт. он указывает на место ГДЕ будет размещенны ДАННЫЕ. |
06.09.2009, 20:31 | #3 |
Экспериментатор
Форумчанин
Регистрация: 16.04.2008
Сообщений: 218
|
Судя по всему, их размер равен размеру слова.
Для создания сложных вещей не нужны сложные интерфейсы. (с) Линус Торвальдс
|
06.09.2009, 20:57 | #4 |
Форумчанин
Регистрация: 26.04.2009
Сообщений: 270
|
это не регламентируеться.....так как не очень важно, не в одной литиратуре не видел сколько точно занимает места указатель..
|
06.09.2009, 21:31 | #5 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
указатель занимает 4 байта
pushl $0x18E3DF6B
call ICQ |
06.09.2009, 21:39 | #6 | |
Меркантильный кю
Участник клуба
Регистрация: 02.02.2008
Сообщений: 1,001
|
Цитата:
Вкратце говоря, динамические переменные используются, когда на этапе программирования неизвестно, сколько памяти потребуется программе, а также для организации различных структур данных (списков, деревьев). Чтобы обратиться к динамической переменной, надо во-первых её создать, а во-вторых запомнить её адрес. Делается это с помощью процедуры Код:
Код:
Код:
Росли вроде умными, выросли дурнями... (c)А.Васильев
|
|
07.09.2009, 13:25 | #7 |
Форумчанин
Регистрация: 07.04.2009
Сообщений: 245
|
Хочу несколько дополнить ответGreblin
Вo первых, память для динамической переменной можно отвести не только с помощью процедуры New, но и с помощбю процедуры GetMem. Во вторых, если в програме используются динамические переменные, то память взатую в системы под эти переменные необходимо освобождать с помощью процедур Dispose или FreeMem.
Всякое безобразие должно быть единообразным. Тогда это называется порядком.
|
07.09.2009, 18:29 | #8 |
Участник клуба
Регистрация: 15.07.2008
Сообщений: 1,933
|
Указатель всегда равен машинному слову, то бишь для шестнадцатиразрядных систем указатель равен двум байтам, на 32-х разрядных 4 байтам и т.д...
Динамические переменные это те, которые создаются в оперативной памяти, в процессе выполнения программы. Под статические переменные память выделяется прямо внутри программы. Динамическими переменными являются не только те, которые выделены с помощью New из кучи, но и те, которые создаются в стеке(локальные переменные функций) |
07.09.2009, 18:36 | #9 |
not
Участник клуба
Регистрация: 27.06.2009
Сообщений: 1,399
|
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Динамические переменные.. | NSvirus | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 08.06.2009 22:56 |
Динамические переменные. Delphi | svobodys | Помощь студентам | 0 | 10.05.2009 16:06 |
Динамические переменные | BIS88 | Помощь студентам | 3 | 05.03.2009 17:35 |
Задача на Динамические переменные)) | forz | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 20.12.2008 04:50 |