• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Указатель

  • Автор темы Vunderkind
  • Дата начала
Статус
Закрыто для дальнейших ответов.
V

Vunderkind

Обясьните пожалуйста операции при вызове функции по ссылке. например возмем такой код
C++:
#include <iostream>
using namespace std;
void modMultiple(int *);
int main(){
int n;
cin>>n;
modMultiple(&n);
cout<<n;


}

void modMultiple(int *nPtr){

*nPtr=*nPtr/5;
}
Тут функция main вызывает функцию modMultiple, и функция modMultiple копирует адресс переменной n в указатель nPtr и изменяет значение указателя на новое. Я правильно сказал и или не так? Если нет обясните пожалуйста какие действия выполняются при реализации этого кода(при вызове функции по ссылке)? если можно шаг за шагом)
 
L

lazybiz

&n - получаем адрес (он же указатель) переменной n и передаем его в функцию
изменяем значение переменной n через указатель на нее.

Добавлено:
и изменяет значение указателя на новое
не значение указателя, а значение переменной на которую ссылается указатель.
(при вызове функции по ссылке)
просто при вызове функции. тут нет ссылок.
 
V

Vunderkind

Спасибо, наконец-то понял! Все четко иллюстрирована на jpg файле.
просто при вызове функции. тут нет ссылок.
Я писал как написано в книге Дейтела.
 

Вложения

  • Capture.JPG
    Capture.JPG
    27,2 КБ · Просмотры: 444
L

lazybiz

Не знаю почему там говориться о ссылках, на скрине они не используются.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!