Урок 7.1.3. Операция взятия адреса
7.1.3. Операция взятия адреса
Операция взятия адреса является одной из важнейших, связанных с указателями. Она обозначается знаком &, является унарной операцией и ее операндом может быть только переменная или элемент массива, причем тип этой переменной может быть любым допустимым типом данных Си.
Попытка применить операцию взятия адреса к какому-либо другому объекту языка вызывает предупреждающее сообщение компилятора. Операция взятия адреса записывается в выражениях в виде:
&<переменная> |
Результатом операции взятия адреса является адрес ячейки памяти, которая была выделена компилятором под соответствующую переменную. Например, если предположить, что для некоторой переменной var выделена область памяти, начиная с адреса 3456, тогда &var будет иметь значение 3456.
Для операции взятия адреса следует учитывать, что &var является константой, так как адрес переменной var не может измениться в ходе выполнения программы. Эта константа является константой типа указатель, ибо представляет собой адрес памяти, а длина константы типа указатель зависит от модели памяти, выбранной при компиляции программы. Операцию взятия адреса & не следует путать с бинарной операцией & (поразрядное логическое И).
Как и все унарные операции, операция взятия адреса имеет высокий приоритет, занимая вторую строку таблицы приоритетов операций.
Оставить комментарий