Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Тип указатель. Динамические переменные





Обычно переменная хранит некоторые данные. Однако помимо обычных, существуют переменные, которые ссылаются на другие переменные. Такие переменные называются переменными типа указатель или просто указателями. Таким образом, в языке Pascal указатель – это и тип данных, и переменная. Указатель-переменная – это переменная, значением которой является адрес другой переменной или структуры данных.

Указатель Обычная переменная

 

 

 

Указатель является величиной, значением которой является адрес байта памяти, где хранятся какие-то данные. Указатели бывают типизированные, указывающие на данные определенного типа, и нетипизированные (типа pointer), которые могут указывать на данные произвольного типа.

Описание типизированного указателя имеет вид:

Type

имя типа указателя =^ тип данных;

var имя переменной: имя типа; или

var имя переменной: ^ тип данных;

При описании указателя записывают тип данных, которые будут размещаться, начиная с байта, на который указывает указатель. Тип данных может быть любым, кроме файлового. Например:

type Pint=^integer; var P1,P2:Pint;

Здесь описаны тип Pint как указатель на величину типа integer и две переменные P1 и P2 типа Pint.

Для описания нетипизированного указателя существует стандартный тип pointer. Этот тип не связан ни с одним конкретным типом данных, однако совместим с любым типом указатель.

var а: pointer;

В начале работы программы переменная-указатель ни на что не указывает. В языке Pascal имеется предопределенная константа nil, которая обычно присваивается указателям, которые в данный момент ни на что не указывают. Идентификатор nil можно использовать в выражениях. Указатели одинакового типа можно сравнивать друг с другом, используя отношения = или <>.

Например: P1:=nil; if P1=nil then writeln(‘Указатель не инициализирован‘);

Указателю можно присвоить значение-адрес переменной соответствующего типа: P:=@i; Для получения значения адреса переменной следует записать оператор @ перед ее именем. Переменная P типа указатель в качестве значения принимает адрес ячейки, в которой размещается значение переменной i.

Указателю можно присвоить значение другого указателя при условии, что они являются указателями на переменную одного и того же типа. Например, если переменные P1и P2 являются указателями типа integer, то в результате выполнения оператора присваивания P2:=P1; переменные P1 и P2 указывают на одну и ту же переменную.

Date: 2016-07-18; view: 424; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию