|
0 / 0 / 0
Регистрация: 30.04.2026
Сообщений: 10
|
|
Как понять тему ссылки и указатели05.08.2026, 20:53. Показов 10566. Ответов 135
Метки нет (Все метки)
я не понимаю эту тему я постоянно путаюсь дайте какойто видеоурок самый понятный или сами объясните я не понимаю.
0
|
|
| 05.08.2026, 20:53 | |
|
Ответы с готовыми решениями:
135
Указатели и указатели на указатели, а также типы данных Code:: Blocks (не на тему программирования, а на тему настройки)
|
|
фрилансер
6508 / 5763 / 1135
Регистрация: 11.10.2019
Сообщений: 15,411
|
|||||||||
| 07.08.2026, 12:33 | |||||||||
![]() И есть такие вещи как "семантика" и "техническая реализация" мы сейчас говорим про семантику Добавлено через 57 секунд И о нём компилятор не знает, до него макросы не добегают Добавлено через 1 минуту Более показательно так:
0
|
|||||||||
|
738 / 705 / 110
Регистрация: 29.05.2015
Сообщений: 4,351
|
|
| 07.08.2026, 12:46 | |
|
0
|
|
|
фрилансер
6508 / 5763 / 1135
Регистрация: 11.10.2019
Сообщений: 15,411
|
|
| 07.08.2026, 12:47 | |
|
alexu_007, того товарища читать не советую, он наговорит
0
|
|
| 07.08.2026, 18:36 | |||||||
0
|
|||||||
|
231 / 172 / 71
Регистрация: 14.06.2024
Сообщений: 472
|
||||||
| 08.08.2026, 09:02 | ||||||
0
|
||||||
|
фрилансер
6508 / 5763 / 1135
Регистрация: 11.10.2019
Сообщений: 15,411
|
|
| 08.08.2026, 09:16 | |
|
udmurt2024, в данном случае они и должны быть одинаковыми, объект один и тот же
0
|
|
|
Вездепух
13235 / 6867 / 1827
Регистрация: 18.10.2014
Сообщений: 17,400
|
||||||||||||
| 08.08.2026, 23:31 | ||||||||||||
|
На практике компилятор не будет выделять память под ссылку тогда, когда этого можно избежать. Но так как привязка ссылки к конкретному целевому объекту может зависеть от факторов времени выполнения, понятно, что компилятору иногда придется прибегать к реализации ссылок через "замаскированные указатели", т.е. выделять под них память. Параметры функций типа ссылка, поля классов типа ссылка - понятно, что на практике во многих случаях (в большинстве случаев?) они будут "замаскированными указателями". Тем не менее ссылки в С++ не являются объектными типами, то есть концептуально они положения в памяти не имеют и памяти не занимают. А все остальное - побочные детали реализации. --- Один из примеров, иллюстрирующий то, что ссылка является лишь еще одним именем для объекта, выглядит так: В языке С++ не существует никакой семантической разницы между объявлением
При этом второй вариант как раз иллюстрирует разделение сущностей на имя переменной (то есть ссылку) и память переменной (безымянный кусочек памяти). Вы всегда можете считать, что первый вариант - это лишь более компактная форма записи второго варианта, то есть всякий раз, когда вы объявляете обычную переменную, вы на самом деле объявляете ссылку (имя), привязанную к безымянному объекту (память).
1
|
||||||||||||
|
Супер-модератор
|
|||||||||||||||||||||
| 09.08.2026, 06:52 | |||||||||||||||||||||
|
bima8, ты пишешь, что "постоянно путаешься". Приведи пример такой путаницы.
Попробую рассказать очень кратко. 1) все данные и программы, с которыми мы работаем, располагаются в оперативной памяти компьютера. 2) память разбита на байты, каждый байт имеет свой номер (адрес), по которому к этому байту обращается процессор 3) для хранения больших чисел байты могут объединяться в группы по 2, 4, 8 ... байтов. Адресом группы процессор считает номер (адрес) самого левого (первого) байта группы 4) в любом случае можно считать, что адрес - это просто целое число. Это понятно? Возражений нет? Если есть - спрашивай. Идём дальше. В языках C/C++ есть операция & - взятие адреса и есть специальный код формата для печати адресов:
Описываются указатели так:
Она называется операцией разыменования (название, на мой взгляд, странное, но устоявшееся).
PS Пуристов прошу не беспокоиться и не придираться. Да, память, с которой работает программист в современных ОС - виртуальная. Да, в некоторых ОС (напр. в MS/DOS) адрес - это не просто целое число. Для начального вникания в суть дела всё это не имеет значения и будет осмысленно позже.
2
|
|||||||||||||||||||||
|
738 / 705 / 110
Регистрация: 29.05.2015
Сообщений: 4,351
|
|
| 09.08.2026, 19:08 | |
|
Почему тип указателя int, а не специально для адреса придуманный? Что бы хоть не путаться, где просто целочисленная переменная, а где указатель?
0
|
|
|
фрилансер
6508 / 5763 / 1135
Регистрация: 11.10.2019
Сообщений: 15,411
|
|
| 09.08.2026, 19:19 | |
|
alexu_007, если после типа стоит звёздочка, это указательный тип
TYPE* - такой указатель умеет указывать на объект типа TYPE
0
|
|
|
Вездепух
13235 / 6867 / 1827
Регистрация: 18.10.2014
Сообщений: 17,400
|
||
| 09.08.2026, 20:51 | ||
char c[10] вам тоже видится, что тип c - char?Тип идентификатора в объявлении int *a складывается из "общей части", относящейся ко всему объявлению (в данном случае int) и "индивидуальных кусочков", навешиваемых на каждый конкретный идентификатор (в данном случае - *). Так что тип указателя в данном примере int *, а не int.
0
|
||
|
Супер-модератор
|
|||||||
| 10.08.2026, 06:46 | |||||||
1
|
|||||||
|
738 / 705 / 110
Регистрация: 29.05.2015
Сообщений: 4,351
|
|
| 10.08.2026, 14:00 | |
|
По "памяти можно путешествовать" и с помощью индексов массива: x[0], x[1], x[2] и так далее. Так что указатель и тут "малополезен".
0
|
|
|
1121 / 992 / 153
Регистрация: 10.08.2015
Сообщений: 5,448
|
|
| 10.08.2026, 14:15 | |
|
0
|
|
|
14811 / 9584 / 1368
Регистрация: 21.01.2016
Сообщений: 36,099
|
|
| 10.08.2026, 15:00 | |
|
vlisp, почему?
0
|
|
|
1121 / 992 / 153
Регистрация: 10.08.2015
Сообщений: 5,448
|
|
| 10.08.2026, 16:35 | |
|
0
|
|
|
14811 / 9584 / 1368
Регистрация: 21.01.2016
Сообщений: 36,099
|
|
| 10.08.2026, 16:47 | |
|
vlisp, т.е. ты сам не можешь объяснить в двух словах? Настолько глубокая тема?
0
|
|
|
фрилансер
6508 / 5763 / 1135
Регистрация: 11.10.2019
Сообщений: 15,411
|
|
| 10.08.2026, 17:16 | |
|
vlisp, массив для этого и предназначен в C++
0
|
|
|
14811 / 9584 / 1368
Регистрация: 21.01.2016
Сообщений: 36,099
|
|
| 10.08.2026, 17:18 | |
|
Алексей1153, в C# для этого тоже есть
stackalloc. А тут оказывается "не комильфо". Век живи - век учись.
0
|
|
|
фрилансер
6508 / 5763 / 1135
Регистрация: 11.10.2019
Сообщений: 15,411
|
|
| 10.08.2026, 17:28 | |
|
Usaga, std::pmr
0
|
|
| 10.08.2026, 17:28 | |
|
Указатели на функции. Указатели на функции как формальные параметры у функциях высшего уровня Вопрос по программе на тему: Массивы и указатели. Динамическое выделение памяти Программа на тему указатели, функции, строки. (язык Си) Задание на тему Указатели Задачи на тему "указатели" Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|