|
5 / 5 / 2
Регистрация: 02.03.2011
Сообщений: 40
|
|
Понять указатели:)10.03.2011, 13:35. Показов 12053. Ответов 55
Метки нет (Все метки)
Добрый день!
Совсем недавно начал изучать С++, в основном по методичке, выданной в ВУЗе и по нескольким книгам (Страуструп Б., Стефан Дэвис) и плюс то, что нахожу в интернете. Практически, всё это привязано к ряду лабораторных и контрольных, которые необходимо сделать. Дошел до указателей....О_о. Проблема вот в чем: те практические примеры, которые показывают использование указателей, не отвечают на вопрос - зачем? То есть, все что сделано в этих примерах с помощью указателей, можно сделать и без них, и нельзя сказать, что это будет сложнее. Из-за этого очень трудно понять смысл указателей и они для меня пока что пустая абстракция . Есть ли какие-нибудь простые практические примеры, показывающие... почему без указателей не обойтись? Например, очень легко практически объяснить суть цикла или там функции.
0
|
|
| 10.03.2011, 13:35 | |
|
Ответы с готовыми решениями:
55
Указатели не могу понять Не могу понять зачем нужны указатели? Строки (массив char), указатели. Не могу понять логику! Help! |
|
137 / 137 / 25
Регистрация: 30.09.2010
Сообщений: 333
|
|
| 12.03.2011, 22:28 | |
|
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.03.2011, 22:31 | |
|
Что конкретно не понятно?
0
|
|
|
137 / 137 / 25
Регистрация: 30.09.2010
Сообщений: 333
|
||
| 12.03.2011, 22:31 | ||
|
Svid, написал
0
|
||
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.03.2011, 22:35 | |
|
Да суть этого примера в том, чтобы показать, что когда в функцию передаются сами переменные, то все изменения, которые в этой функции над её параметрами совершаются, не коснутся фактических параметров, переданных вызывающей функцией в вызываемую, а когда используются указатели, тут уже все изменения отражаются на фактических параметрах, поскольку передаются их адреса. Тут не стояла цель показать нецелесообразность или расточительность в плане ресурсов.
1
|
|
|
137 / 137 / 25
Регистрация: 30.09.2010
Сообщений: 333
|
|
| 12.03.2011, 22:44 | |
|
silent_1991, походу Я Вас в конец ДОСТАЛ вопросами, но зато понял что вы хотели сказать тем исходником =)
0
|
|
|
5058 / 3118 / 271
Регистрация: 11.11.2009
Сообщений: 7,044
|
|
| 12.03.2011, 22:46 | |
|
Да нет, если что не понятно - спрашивайте))) Просто такое ощущение, что вы в принципе не поняли изначальный смысл того примера, и всё напираете на лишние переменные и и расход памяти зазря.
0
|
|
|
137 / 137 / 25
Регистрация: 30.09.2010
Сообщений: 333
|
||
| 12.03.2011, 22:52 | ||
0
|
||
|
|
||||||||||||||||
| 13.03.2011, 22:57 | ||||||||||||||||
|
Извините, что так внезапно исчез - инет весь день не работал.
Temirlan90, на счёт передачи параметров в функцию. Параметры функции являются локальными переменными этой функции, то есть находятся в её пространстве имён:
Пример с image_swap аналогичен.
1
|
||||||||||||||||
|
137 / 137 / 25
Регистрация: 30.09.2010
Сообщений: 333
|
||
| 14.03.2011, 16:24 | ||
|
talis, почему функция add не возвращает свои копии в main? Потому что она типа void?
0
|
||
|
122 / 85 / 16
Регистрация: 14.02.2011
Сообщений: 340
|
|||||||||||
| 14.03.2011, 16:27 | |||||||||||
|
Temirlan90, да
все функции построены в виде: \тип возвращаемего значния\ + имя функции + (аргументы) { \список действий \ и return возвращаемое значение ; } к примеру а функции типа void означают что нет возвращаемого значния.. к примеру:
все функции кроме типа void должны возвращать значние согласно типу объявления
аргументы поступающие в функцию - x и y(целые числа); в функции действие сложение. и возращаемое значние - сумма этих двух переменных. т.е. тоже Целое число.
1
|
|||||||||||
|
40 / 38 / 5
Регистрация: 22.01.2011
Сообщений: 670
|
||||||
| 14.03.2011, 16:44 | ||||||
|
и если есть return в функции, то можно делать такие выражения:
1
|
||||||
|
122 / 85 / 16
Регистрация: 14.02.2011
Сообщений: 340
|
||||||
| 14.03.2011, 17:05 | ||||||
|
либо еще проще:
dimon1984, можно без дополнительной переменной
1
|
||||||
|
40 / 38 / 5
Регистрация: 22.01.2011
Сообщений: 670
|
||||||
| 14.03.2011, 17:37 | ||||||
|
и поддержу, ещё вот:
0
|
||||||
|
0 / 0 / 0
Регистрация: 14.03.2011
Сообщений: 11
|
|
| 14.03.2011, 17:37 | |
|
0
|
|
|
|
|||||||
| 14.03.2011, 17:53 | |||||||
|
Добавлено через 3 минуты Однако в void-функциях инструкция return используется для досрочного завершения выполнения:
Не по теме: Topic Starter, наверное, в ужасе...
0
|
|||||||
|
5 / 5 / 2
Регистрация: 02.03.2011
Сообщений: 40
|
|||
| 15.03.2011, 13:17 [ТС] | |||
![]() Так что еще раз большое всем спасибо, и особенно talis! Кстати, после проблемы с указателями понял, что методичка мне не поможет, а Страуструп явно требует какого-то начального уровня, которого у меня пока нет, приобрел Лафоре "ООП в С++" - рекомендую таким же гуманитариям как я - ну очень доступно объясняет ( и что характерно - указатели там появляются уже после структур, функций, объектов-классов, массивов, перегрузки операций и наследования.. ).
0
|
|||
| 15.03.2011, 13:17 | |
|
Не могу понять, как "живут" файловые указатели Указатели и указатели на указатели, а также типы данных Через указатели на указатели посчитать сумму двух чисел и записать в третье Почему Лафоре использует указатели на указатели, вместо обмена значениями указателей? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
|
Генератор паролей (вариант №4)
Maks 01.11.2026
После публикации 3-го варианта генератора паролей, разослал его своим коллегам (с целью оценки), в итоге были получены следующие рекомендации:
1. Вернуть возможность использования знаков | 1 l I;. . .
|
Генератор паролей (вариант №3)
Maks 30.10.2026
Финальная версия генератора паролей 1С.
Доработка решения в этот раз коснулась только визуальной части, а именно, добавлен реквизит ДопПараметры (тип Булево), который скрывает/ отображает реквизиты:. . .
|
Магическое мышление и магия, современная наука не отличима от магии (говорит ИИ Джемени)
zorxor 30.10.2026
Джемени, расскажи, пожалуйста, что такое магическое мышление, что такое магия, почему современная наука чем-то напоминает магию?
Фраза «Любая достаточно развитая технология неотличима от магии». . .
|
|
За какое время ИИ может подобрать пароль по хешу (рассказывает Джемени ИИ)
zorxor 30.10.2026
Расскажи, Джемени, если известен хэш МД5, например, за сколько ИИ сможет подобрать соответствующий пароль?
Искусственный интеллект (ИИ) может подобрать простой или средний по сложности пароль по. . .
|
Кто убил Suno? Почему наше солнышко погасло? (диалог с ИИ Джемени)
zorxor 30.10.2026
Как убивали Suno. Хронология.
«Убийство» музыкальной нейросети Suno — это затяжной процесс, в котором технологический хайп стартапа разбился о жесткую реальность судебных исков от гигантов. . .
|
Генератор паролей (вариант №2)
Maks 30.10.2026
Обновленная версия ранее созданной обработки.
Добавлены следующие реквизиты типа Булево:
- Буквы;
- Цифры;
- Символы.
Изменена логика команды "Сгенерировать" и процедуры "ПриОткрытии":. . .
|
Генератор паролей (вариант №1)
Maks 29.10.2026
Реализация из решения ниже выполнена исключительно по моей инициативе, дабы облегчить себе работу в создании паролей для администрируемых мною сервисов и пользователей.
Самым главным критерием для. . .
|