Операции с указателями

С указателями можно провести две унитарные операции:

1. &(взять адрес). Указатель получает адрес переменной. Данная операция применима к переменным, под которые выделен соответствующий участок памяти. Например,

int x=1, *pint;

pint=&x; //теперь в pint записан адрес переменной x

2. * (операция разъименовывания). Предназначена для доступа к величине, расположенной по данному адресу.

Например,

int x=1, *pint;

pint=&x; //теперь в pint записан адрес переменной x

/*содержимому по данному адресу присвоим новое значение равное 2 */

*pint=2;

cout<< "x= " <<x;

Над указателями можно выполнять арифметические операции сложения, инкремента, вычитания, декремента и операции сравнения. При выполнении арифметических операций с указателями автоматически учитывается размер данных (т.е. объем памяти), на которые он указывает.

Указатели, как правило, используются при работе с динамической памятью (heap, или «куча»).

В языке C++ для выделения и освобождения памяти определены операции new и delete соответственно. Используют две формы операций:

1. Тип *указатель = new тип (значение) – выделение участка памяти в соответствии с указанным типом и занесение туда указанного значения. delete указатель – освобождение выделенной памяти.

2. Тип *указатель = new тип[n] – выделение участка памяти размером n блоков указанного типа. delete [ ]указатель – освобождение выделенной памяти.

 








Дата добавления: 2015-07-30; просмотров: 811;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.