![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 26.07.2019
Сообщений: 10
|
![]()
Здравствуйте. Использование указателей на переменную выполняется быстрее, чем прямое обращение к переменной. Как я понял, при прямом обращении к переменной сначала происходит переход по адресу переменной, потом её копирование на новый адрес. При использовании указателя, сразу переходиш по адресу переменной. Правильно я понимаю?
Последний раз редактировалось bugs_bunny; 04.08.2020 в 15:30. Причина: Неправильный заголовок |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,372
|
![]()
Нет.
Указатель НА переменную, т.е. по факту это ДВЕ переменных, соответственно имеем две операции чтения против одной. Последний раз редактировалось waleri; 03.08.2020 в 20:03. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 26.07.2019
Сообщений: 10
|
![]()
"waleri" - две операции, вместо одной. Почему? По указателю переходим на переменную - это одно действие. Переходим на ту же переменную, а не на её копию, как при передаче по значению. Указатель по определению указывает на variable, а не на её копию, как при передаче по значению.
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,372
|
![]()
Нет такого действия "переход на переменную".
Получения адреса переменной из указателя - это одна операция. Чтение значения переменной - это еще одна операция. При работе с переменной напрямую первый шаг отсутствует. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 26.07.2019
Сообщений: 10
|
![]()
Хорошо, "waleri", объясните, почему использование указателей уменьшает время выполнения программы.
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 04.02.2011
Сообщений: 4,716
|
![]()
Чего проще - посмотреть код, который при этом генерируется, какие команды.
И вообще - речь идёт о ++ ? Может влиять включённый уровень оптимизации. |
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,372
|
![]() |
![]() |
![]() |
![]() |
#8 | |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,671
|
![]() Цитата:
Т.е. я потратил своё время, переименовал, а вы вернули своего коротуна. Читайте правила форума, составляйте заголовки отражающие суть вопроса. |
|
![]() |
![]() |
![]() |
#9 |
фрилансер, препод.
Участник клуба
Регистрация: 11.10.2019
Сообщений: 1,044
|
![]()
Alar, "прямая и косвенная адресация в C++"
![]() |
![]() |
![]() |
![]() |
#10 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,671
|
![]()
Алексей1153, вот так норм? )
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Косвенная адресация (Паскаль с ASM вставками) | XORandom | Помощь студентам | 1 | 27.01.2019 13:12 |
0.5 быстрее работает чем /2 | ts-alan | C# (си шарп) | 10 | 02.09.2015 10:33 |
косвенная адресация(assembler) | nastya2112 | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 02.06.2011 02:53 |
Почему inc работает быстрее обычного сложения | Rusl92 | Паскаль, Turbo Pascal, PascalABC.NET | 9 | 26.04.2010 11:58 |