Здравствуйте!
Только начал изучать в Delphi динамические списки
подскажите что означает знак ^ в этой структуре:
Der=^Elem;
Elem=Record
Fam:String[15];
Adr:String[20];
Next:Der
End;
Другие языки программирования и технологии
delphi, списки
Смотря где этот символ находится. В вашем случае он означает, что тип Der является указателем на тип Elem.
Если же такой символ будет находится после имени переменной типа Der, то это будет разименование указателя и позволит получить доступ к полям записи, на которую указывает эта переменная.
var SomePtr : Der;
....
SomePtr^.Fam := 'Пупкин';
SomeStr := SomePtr^.Adr;
> и еще что такое в таких структурах NIL?
Значение "пустого" указателя, т. е. указателя, который ни на что не указывает и в то же время его значение не является "мусором".
Если же такой символ будет находится после имени переменной типа Der, то это будет разименование указателя и позволит получить доступ к полям записи, на которую указывает эта переменная.
var SomePtr : Der;
....
SomePtr^.Fam := 'Пупкин';
SomeStr := SomePtr^.Adr;
> и еще что такое в таких структурах NIL?
Значение "пустого" указателя, т. е. указателя, который ни на что не указывает и в то же время его значение не является "мусором".
Символ ^ - означает указатель.
Т. е. переменная типа Der хранит не саму переменную, а её адрес в памяти.
В Паскале/Делфи описание переменных всегда должно быть раньше их использования.
Только для указателя на запись делается исключение.
NIL - это указатель на пустое место.
Паскаль, при начале работы программы, не обнуляет переменные.
Они ссылаются на произвольное место памяти.
По принципу: где создались, то и взяли.. .
Поэтому, при начале работы программы, для переменных всегда нужно задавать какие-то начальные данные.
Числу - число, строке - строку [в том числе и пустую] , а указателю - значение NIL.
Старый компьютерный анакдот:
-- Бачишь, як Паскали НУЛЬ кличуть?
-- Як?
-- НИ-И-ИЛ!
-- Поубиваль бы хадов...
Т. е. переменная типа Der хранит не саму переменную, а её адрес в памяти.
В Паскале/Делфи описание переменных всегда должно быть раньше их использования.
Только для указателя на запись делается исключение.
NIL - это указатель на пустое место.
Паскаль, при начале работы программы, не обнуляет переменные.
Они ссылаются на произвольное место памяти.
По принципу: где создались, то и взяли.. .
Поэтому, при начале работы программы, для переменных всегда нужно задавать какие-то начальные данные.
Числу - число, строке - строку [в том числе и пустую] , а указателю - значение NIL.
Старый компьютерный анакдот:
-- Бачишь, як Паскали НУЛЬ кличуть?
-- Як?
-- НИ-И-ИЛ!
-- Поубиваль бы хадов...
NIL = Nihil - пустой указатель, никуда не указывает.
Похожие вопросы
- delphi, динамические списки
- Согласны с этим - Глубинные причины ненависти к Delphi/Pascal ?
- delphi, динамические списки
- delphi, динамические списки
- Delphi:Прочитал, что если при динамическом создании компонента если указать Name объекта, то в последующем можно ->
- Срочно нужна помощь Ввести ряд чисел и сформировать список элементов ряда, кратных 10. Язык программирования Delphi.
- Как в Delphi сделать справку?
- Помогите найти ошибку Delphi легкая программка
- Delphi ПОМОГИТЕ ПОЖАЛУЙСТА!
- Задача на Delphi. Аааа решите пожалуйста :'(