|
25 / 25 / 19
Регистрация: 13.07.2015
Сообщений: 433
|
||||||
Почему при присваивании адреса массива не ставится знак '&' получения адреса22.11.2015, 21:01. Показов 8014. Ответов 88
Метки нет (Все метки)
0
|
||||||
| 22.11.2015, 21:01 | |
|
Ответы с готовыми решениями:
88
Операция получения адреса & и vector 1. Ввести символьный массив. Найти адреса всех парных его элементов. 2. Вывести адреса элементов массива 4 на 4, находящ Почему разные адреса одного и того же элемента динамического массива? |
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 23.11.2015, 13:42 | |
|
Это не упрощение. В русском варианте цитаты Дейтелов грубая ошибка.
Имя массива - не является ни указателем, ни ссылкой, ни чем-либо еще. Это вообще не объект какого бы-то ни было типа, это идентификатор типа NoType и стандарт разрешает это "чудо-юдо" приводить к типу константный указатель. Только благодаря неявному приведению, с ним возможно работать как с константным указателем.
0
|
|
|
Модератор
|
|||
| 23.11.2015, 13:58 | |||
|
Блин, про неявное приведение к указателю чё-то никто не пишет. Вот, ещё, например в "Эффективное программирование на C++":
И далее (стр. 212) там же:
0
|
|||
| 23.11.2015, 14:00 | |
|
0
|
|
|
710 / 283 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
|
|
| 23.11.2015, 14:08 | |
|
0
|
|
|
:)
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
|
||
| 23.11.2015, 14:20 | ||
|
Именно поэтому, учить язык по Стандарту - занятие не благодарное, но и утверждать, что книги врут тоже нельзя, т.к. с обывательской (прикладного программиста) точки зрения имя массива есть указатель на начальный элемент. А вот когда хочется узнать как (почему) это работает уже есть смысл заглянуть в Стандарт.
0
|
||
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
||||||||||
| 23.11.2015, 15:03 | ||||||||||
|
Посмотрел русский, не ленись посмотреть оригинальный текст в оригинальном учебнике.
Вот я не поленился. Отрыл оригинал Дейтелов (7изд). Красиво там все, красочно так. оригинал текста
Добавлено через 4 минуты А дальше уже пример, что они тесно связаны.
Хотя дальше и говорится...
![]() Добавлено через 11 минут Дейтелы немного подофигели такую ересь писать
1
|
||||||||||
|
Модератор
|
|||||
| 24.11.2015, 06:31 | |||||
|
daslex, я думаю, это общее место в большинстве обучающих книг по С++. Упрощение. Да, они грешат против истины, но так проще объяснить новичку. Они говорят о том, что это указатель, но не упоминают о том, что получается он из неявного преобразования имени массива в указатель на первый элемент. Иначе придётся ещё тут же пояснять, что такое преобразования, чем явные преобразования отличаются от неявных и т.д. А в теме про массивы и указатели новичку и так непросто разобраться.
Добавлено через 10 минут У Страуструпа так:
И далее у него же:
1
|
|||||
|
306 / 101 / 18
Регистрация: 04.07.2014
Сообщений: 571
|
|
| 24.11.2015, 08:55 | |
|
Всё, что неявно куда-то приводится является этим куда-то.
Метафорически говоря, типовая метка указателя int* -- базовый тип для типа переменной а, объявленной как int a[5];
0
|
|
| 24.11.2015, 09:00 | |
|
0
|
|
| 24.11.2015, 09:49 | |
|
0
|
|
| 24.11.2015, 09:54 | |
|
Есть ли для программиста разница - является ли имя массива указателем или приводится оно к указателю?
При передаче в качестве параметра это одно и то же. А когда это не одно и то же, есть примеры?
0
|
|
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,886
|
|
| 24.11.2015, 10:06 | |
|
0
|
|
|
306 / 101 / 18
Регистрация: 04.07.2014
Сообщений: 571
|
|
| 24.11.2015, 10:31 | |
|
Croessmah
Так как в любом выражении, где требуется переменная int*, можно использовать переменную int a[], то очевидно, что массив -- это указатель. Хотя указатель -- это не массив, так как можно написать выражение верное для int a[5], но неверное для int*.
0
|
|
|
Неэпический
|
||
| 24.11.2015, 11:08 | ||
|
Ну и там, где требуется размер указателя, получим размер массива. Например, литерал 0 имеет тип int, но может быть неявно преобразован к указателю, но это не делает из этого литерала указательный тип.
0
|
||
|
306 / 101 / 18
Регистрация: 04.07.2014
Сообщений: 571
|
||
| 24.11.2015, 17:10 | ||
|
0
|
||
|
Неэпический
|
||||||||
| 24.11.2015, 17:16 | ||||||||
0
|
||||||||
| 24.11.2015, 17:16 | |
|
Почему адреса элементов массива находятся в памяти не по порядку Ошибка получения ip-адреса
Почему при редактировании ip-адреса NetworkManager создаёт второе соединение? Получения адреса объекта вызвавшего события Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров
В текущей версии модели успешно реализован ключевой механизм. . .
|
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям
Реализованные компоненты:
Механизм закисления почвы через протонную помпу
Конкуренция между типами микориз
pH как триггер сукцессии
C/ P соотношение. . .
|
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
|
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
|
|
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы
## О чём эта статья
В процессе построения ОДУ-модели (система дифференциальных. . .
|
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет)
Содержание проекта
Симуляция вековой (50 лет) экологической сукцессии в почве леса
Основные участники: АМ-гриб, ЭКМ-гриб,. . .
|
сукцессия 23. Более физиологичная физиология, более экологичная экология, более диффурные диффуры.
anaschu 12.07.2026
Что реально нашли и починили за эти 5 часов
Правило Линдемана (КПД конверсии сахара в тело, kEff) — раньше 100% полученного углерода шло прямо в биомассу гриба; теперь только kEff=0. 5 (после. . .
|
сукцессия 22. От артефактов к физиологии: калибровка агентной модели грибной сукцессии для воспроизведения сезонной динамики и pH-плато
anaschu 11.07.2026
Аннотация
В данной работе представлена калибровка агентной модели динамики грибных сообществ (fungal-succession), направленная на устранение нефизичных артефактов (коллапс биомассы, мгновенное. . .
|