Size: a a a

2021 February 26

П

Пашечка in supapro.cxx
Anatoly Shirokov
Мы проводим статопрос перед умерщвлением плоти. Кто эту дичь вам сказал про указатель?
Да никто не сказал. Щас, уно моментум
источник

NM

Nastya Medveda in supapro.cxx
In Dev
В первом случае вы работаете с объектом типа массив, во втором - с указателем на элемент
Хорошо, то есть получается что статический массив и массив в куче — это разные объекты?
источник

П

Пашечка in supapro.cxx
Пашечка
Ну, пардон, я стараюсь не усложнять начинающим жизнь) пусть лучше они разберутся, а уже потом им сказать "cake is a lie, стека и кучи не существует в стандарте, и т.д. и т.п., забудьте всё, что знали, начинайте сначала на уровне посложнее"
Вот
источник

AS

Anatoly Shirokov in supapro.cxx
Это введение в заблуждение
источник

CD

Constantine Drozdov in supapro.cxx
Nastya Medveda
Хорошо, но почему тогда в случае статического массива я могу итерировать по элементам не боясь выйти за пределы массива
for(int aNumber : array)

а при указателе на массив мне нужно отдельно таскать еще и размер массива?
Как такое может быть если это одинаковые объекты?
Потому что это не указатель на массив
источник

LA

Liber Azerate in supapro.cxx
Anatoly Shirokov
Это введение в заблуждение
Я, конечно, согласен, но абстракция – всегда введение в заблуждение
источник

П

Пашечка in supapro.cxx
Anatoly Shirokov
Это введение в заблуждение
Ну ладно, конкретно в данном случае я согласен, что выразился некорректно
источник

C

Chuvi in supapro.cxx
Anatoly Shirokov
Мы проводим статопрос перед умерщвлением плоти. Кто эту дичь вам сказал про указатель?
Вопрос не ко мне, но я тоже, пожалуй, отвечу.
Собственные наблюдения, в том числе с использованием отладчика, и изучение дизассеблерного кода.

Вы же, попав молотком по пальцам, тоже делаете вывод, что это больно? При этом совсем не требуется, чтобы вам об этом рассказал кто-то ещё.
источник

CD

Constantine Drozdov in supapro.cxx
Nastya Medveda
Хорошо, то есть получается что статический массив и массив в куче — это разные объекты?
Попробуйте представить себе, что такое "улица Пушкина" и чем она отличается от "улица Пушкина, дом 0" как адрес
источник

ID

In Dev in supapro.cxx
Nastya Medveda
Хорошо, то есть получается что статический массив и массив в куче — это разные объекты?
У них разный storage duration, об этом уже сказали. В случае динамического выделения у вас просто нет выбора кроме как обращаться к массиву по указателю
источник

CD

Constantine Drozdov in supapro.cxx
Nastya Medveda
Хорошо, то есть получается что статический массив и массив в куче — это разные объекты?
"улица Пушкина, дом 0"[5] это дом "улица Пушкина, дом 5"
"улица Пушкина"[5] это дом "улица Пушкина, дом 5"
это не значит, что адрес дома 0 по улице Пушкина и улица Пушкина одно и то же
источник

AS

Anatoly Shirokov in supapro.cxx
Liber Azerate
Я, конечно, согласен, но абстракция – всегда введение в заблуждение
Массив и указатель строго определены в стандарте. О каких абстракциях речь?
источник

AS

Anatoly Shirokov in supapro.cxx
Chuvi
Вопрос не ко мне, но я тоже, пожалуй, отвечу.
Собственные наблюдения, в том числе с использованием отладчика, и изучение дизассеблерного кода.

Вы же, попав молотком по пальцам, тоже делаете вывод, что это больно? При этом совсем не требуется, чтобы вам об этом рассказал кто-то ещё.
Чуви, ты наркоман
источник

LA

Liber Azerate in supapro.cxx
Anatoly Shirokov
Массив и указатель строго определены в стандарте. О каких абстракциях речь?
Да только вот найдите точный ответ что такое указатель по стандарту. А массив, например, абстракция над непрерывным куском памяти
источник

CD

Constantine Drozdov in supapro.cxx
Constantine Drozdov
"улица Пушкина, дом 0"[5] это дом "улица Пушкина, дом 5"
"улица Пушкина"[5] это дом "улица Пушкина, дом 5"
это не значит, что адрес дома 0 по улице Пушкина и улица Пушкина одно и то же
улица Пушкина это вообще два адреса дома, первого и последнего
источник

LA

Liber Azerate in supapro.cxx
Anatoly Shirokov
Чуви, ты наркоман
А с ним согласен. Массивы выглядят как указатели внутри функций. Аллоцированные на стеке через alloca
источник

AS

Anatoly Shirokov in supapro.cxx
Liber Azerate
А с ним согласен. Массивы выглядят как указатели внутри функций. Аллоцированные на стеке через alloca
Они не выглядят, они низводятся до указателей
источник

AS

Anatoly Shirokov in supapro.cxx
Liber Azerate
Да только вот найдите точный ответ что такое указатель по стандарту. А массив, например, абстракция над непрерывным куском памяти
Что указатель, что массив определены. Ищи
источник

DF

Dollar Føølish in supapro.cxx
Можно это воспринимать просто как неявную конверсию каких много
источник

LA

Liber Azerate in supapro.cxx
Anatoly Shirokov
Они не выглядят, они низводятся до указателей
Нет, ну вот в LLVM IR, к примеру, массивы не являются SSA-value, они являются указателями
источник