Лабораторный практикум по основам языка C/С++ |
Тема 3.1.Указатели
3.1.1.Указатели
Указатель это переменная, хранящая адрес некой области памяти. Часто говорят, что указатель указывает на область памяти, или указатель ссылается на область памяти.
В области памяти, на которую ссылается указатель может располагаться некая переменная, массив данных или просто какие-либо бинарные данные, например изображение. Поскольку нет никакого стандартного типа данных, позволяющего хранить в переменной этого типа графическое изображение, звук или видео, то подобную информацию можно загрузить в память и хранить объем занятой памяти, а также адрес первой ячейки памяти всей области. Вот для этого и используются указатели, поскольку они позволяют хранить адрес в памяти.
Если указатель ссылается на область памяти, в которой хранится переменная стандартного типа
(int
, float
, char
и т.д.), то такой указатель называется типизированным.
Типизированный указатель описывается также, как и обычные переменные, но перед именем переменной-указателя ставится
значок "звездочка" (*
)
Результат выполнения программы:
Как видно из примера, приведенного выше, простое использование переменной-указателя позволяет получить
только адрес в памяти. Если необходимо извлечь значение из области памяти по адресу, хранящемуся в
переменной-указателе, то необходимо использовать операцию разыменования "звездочка" (*
).
Обратите внимание на строки 15, 18, 21 и 23. В этих строках перед именем переменной указателя
стоит звездочка, то есть указатель разыменовывается и потому выводится значение, а не адрес.