Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.01.2015, 20:44   #1
litspeaker
Новичок
Джуниор
 
Регистрация: 22.01.2015
Сообщений: 1
По умолчанию Подскажите по операторам

Что будет отображено при выполнении этих операторов:

0: int Number = 3;
1: int* pNum1 = &Number;
2: _*pNum1 = 20;
3: int* pNum2 = pNum1;
4: Number *= 2;
5: cout << *pNum2;

В ответах пишут 40, не могу понять почему? Подскажите, пож-та

Последний раз редактировалось litspeaker; 22.01.2015 в 20:47.
litspeaker вне форума Ответить с цитированием
Старый 22.01.2015, 21:54   #2
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Как-то так оно работает
Цитата:
0: int Number = 3;
1: int* pNum1 = &Number; // pNum1 указывает на ту же область памяти, что и Number
2: _*pNum1 = 20; // по сути это равнозначно Number = 20
3: int* pNum2 = pNum1; // теперь pNum2 указывает туда же, куда и pNum1, а это как мы помним Number
4: Number *= 2; // Number умножаем на 2, т.е. 20 * 2 и имеем Number = 40
5: cout << *pNum2; // Выводим значение, на которое указывает pNum2, а это всё тот же Number
pu4koff вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите lexan333 Помощь студентам 2 19.09.2014 06:48
Вопрос по операторам -He3HaUKa- Общие вопросы C/C++ 5 26.03.2011 23:25
Подскажите Ser Паскаль, Turbo Pascal, PascalABC.NET 1 15.03.2008 18:32
Две задачи операторам цила Exact Паскаль, Turbo Pascal, PascalABC.NET 3 06.03.2008 18:30