|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
Что такое указатель на массив?18.02.2020, 15:28. Показов 6645. Ответов 108
Метки нет (Все метки)
Указатель на массив это указатель на первый элемент массива?
0
|
|
| 18.02.2020, 15:28 | |
|
Ответы с готовыми решениями:
108
Что такое хэндлер файла? Что такое файловый указатель?
Что такое указатель на член класса? |
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
|||
| 19.02.2020, 09:03 | |||
|
Оно не заменяется, а приводится. Т.е. в определенные моменты одна сущность порождает другую. При этом исходная сущность никуда не девается. Вы понимаете, что значит приведение? Добавлено через 1 минуту Я не очень-то верю в то, что Липпман стал бы пользоваться подобного рода упрощениями. В какой-то другой книге другого автора - возможно, видел такое.
0
|
|||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 19.02.2020, 09:06 [ТС] | |
|
DrOffset, точнее сказать не с массивами, а с указателя и на них. Вы сами раньщ писали что arr неявно становится указателем на первый подмассив( я пишу о int arr[10][20]), тоесть arr = int (*p) [20], что будет если я теперь сделаю &arr? Разве не адрес указателя?
0
|
|
| 19.02.2020, 09:06 | |
|
0
|
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 19.02.2020, 09:07 [ТС] | |
|
DrOffset, ну просто в книге есть отдельно неявно преобразовывает и отдельно автоматически заменяет, мне кажется ошибки перевода нету
0
|
|
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 19.02.2020, 09:11 [ТС] | |
|
Croessmah, int arr [10][20] - arr даст int (*p) [20], &arr даст int (*p) [10]?
Добавлено через 1 минуту Croessmah, Липпман 5-е издание 3.5.3 Указатели и массивы
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||
| 19.02.2020, 09:14 | ||
|
Ну точно. Вот цитат из оригинала:
2
|
||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 19.02.2020, 09:16 [ТС] | |
|
DrOffset, ладно, но что с примером, я же беру & адресс int(*p) [20] указателя, чем это не адресс указателя?
0
|
|
|
Неэпический
|
||
| 19.02.2020, 09:17 | ||
arr имеет тип int[10][20], значит указатель на него имеет тип int(*)[10][20].arr неявно может быть преобразован в указатель на первый элемент - int(*)[20]
0
|
||
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||||||||
| 19.02.2020, 09:19 | ||||||||
Адрес указателя был бы, если бы вы брали адрес у объекта типа "указатель".
0
|
||||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 19.02.2020, 09:23 [ТС] | |
|
DrOffset, теперь все более менее стало на свои места, адреса у них одинаковые потому указывают они оба неявно преобразовываются в &arr[0][0]?
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||||||||||
| 19.02.2020, 09:32 | ||||||||||
|
Вы не понимаете, что значит "преобразуется"? Представьте, что везде, где это требуется, у нас есть неявный вызов функции. Т.е.
Понятно, что arr никак не меняется. Это неявный аргумент неявной функции преобразования, которую выполняет компилятор. Правила преобразования описаны в стандарте языка:
Добавлено через 2 минуты Все примеры, что я вам давал выше вы не разбирали, не запускали, не экспериментировали и не думали? ![]() В общем я предлагаю вам перестать пока тут спрашивать и уже позаниматься практикой. Иначе никакого терпения отвечать по 10 раз на одно и то же ни у кого не хватит.
0
|
||||||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 19.02.2020, 09:35 [ТС] | |
|
DrOffset, самый запутанный для меня момент - cout << arr, что выводит cout? &arr[0][0]? &arr? Или int (*) [10][20] что собственно тоже самое
0
|
|
| 19.02.2020, 09:40 | |
|
0
|
|
|
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
|
||||||||||||||||||||||
| 19.02.2020, 09:45 | ||||||||||||||||||||||
вот такой:
т.е.
int (*)[20]а convert_pointer_to_void_pointer даст void *
0
|
||||||||||||||||||||||
|
63 / 46 / 11
Регистрация: 27.12.2017
Сообщений: 1,484
|
|
| 19.02.2020, 09:46 [ТС] | |
|
DrOffset, так что выводит cout << arr? неявно кастит в int (*) [20],или просто выводит адресс? Тогда адресс чего он выводит? Первого элемента в массиве?
0
|
|
|
Неэпический
|
|
| 19.02.2020, 09:46 | |
|
0
|
|
| 19.02.2020, 09:46 | |
|
Указатель на ссылку или что это такое? Что такое указатель и с чем его есть
Что такое указатель? Что быстрее использовать, массив э-в, или указатель на массив э-в? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
23. что сделано за последнее время.
anaschu 17.06.2026
• Эталон: Клиника НИИ питания РАМН, Москва — централизованный пищеблок, 225 коек, 180 пациентов
• Git: репозиторий med2, ветка абсентеизм. Рабочий файл: СРесурсами1_v4. alp
• Смежный проект:. . .
|
22. Подключение слоя системной динамики (потоковые диффуры): экономические метрики модели
anaschu 17.06.2026
Апдейт модели: финансовый контур, разделение затрат
Продолжаю развивать модель рабочего коллектива на AnyLogic. В этот раз работа шла над агентом Экономика — финансовым SD-слоем модели. Задача:. . .
|
[golang] Insert Delete GetRandom O(1) (Leetcode: 380)
alhaos 16.06.2026
Insert Delete GetRandom O(1)
Сложность: Medium
Источник: LeetCode 380
Задача
Реализовать структуру данных RandomizedSet, которая поддерживает следующие операции за O(1) в среднем:
|
Свет в конце тоннеля
kumehtar 16.06.2026
Поймал себя на одной мысли.
Раньше мне всегда казалось неправильным жить без чёткого понимания, куда всё идёт. Будто я иду по дороге судьбы, но не знаю, куда она ведёт. А раз не знаю — значит,. . .
|
|
[golang] Реализация стека с поддержкой получения минимального элемента за O(1)
alhaos 16.06.2026
Min Stack
Сложность: Medium
Источник: LeetCode 155
Задача:
Реализовать стек который поддерживает push, pop, top и получение минимального элемента за O(1).
Методы:
|
[golang] Конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов.
alhaos 10.06.2026
Задача
Реализовать конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов.
Сигнатура
func Fetch(urls string, maxConcurrent int) Result
Пример
urls :=. . .
|
[golang] Состояние гонки (race condition)
alhaos 10.06.2026
Состояние гонки (race condition)
Состояние гонки (Race Condition) — это ошибка, возникающая при одновременном доступе нескольких горутин к одним и тем же данным без должной синхронизации. При этом. . .
|
Взрослые отношения, и почему они не получаются
kumehtar 09.06.2026
Когда в детстве ребёнок не получает от родителей чего-то важного, он лишается не просто приятных переживаний, а основы для формирования определённых внутренних качеств и навыков. Если ребёнок не. . .
|