Menu
Coddy logo textTech

Оператор взятия адреса

Часть раздела Логика и управление потоком путешествия по C++ на Coddy — урок 2 из 56.

Теперь, когда вы понимаете, что такое указатель, вам нужно научиться тому, как на самом деле получить адрес памяти переменной. Здесь на помощь приходит оператор взятия адреса (&).

Оператор взятия адреса & ставится перед именем переменной для получения её адреса в памяти. Когда вы используете &variable_name, он возвращает местоположение в памяти, где хранится эта переменная.

int number = 42;
int* ptr = &number;  // ptr теперь хранит адрес переменной number

В этом примере &number получает адрес памяти переменной number, и мы присваиваем этот адрес нашему указателю ptr. Указатель не содержит значение 42 — он содержит адрес, по которому хранится 42.

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

challenge icon

Задание

Легко

Создайте программу, которая демонстрирует оператор взятия адреса, работая с целочисленной переменной и указателем.

Объявите целочисленную переменную с именем score и инициализируйте её значением 85.

Создайте указатель с именем scorePtr, который хранит адрес памяти переменной score с помощью оператора взятия адреса.

Выведите адрес памяти, хранящийся в указателе, используя следующий формат:

Address: [memory address]

Адрес памяти будет отображен в шестнадцатеричном формате (например, 0x7fff5fbff6ac), как C++ обычно показывает адреса памяти.

Шпаргалка

Оператор взятия адреса & используется для получения адреса переменной в памяти:

int number = 42;
int* ptr = &number;  // ptr хранит адрес переменной number

Когда вы используете &variable_name, он возвращает местоположение в памяти, где хранится эта переменная. Указатель содержит адрес, а не само значение переменной.

Попробуйте сами

#include <iostream>
using namespace std;

int main() {
    // TODO: Напишите свой код ниже
    
    return 0;
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Логика и управление потоком