powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / указатель на массив. что это такое ?
25 сообщений из 158, страница 5 из 7
указатель на массив. что это такое ?
    #39969503
тут ещё можно добавить, что в асме (который, по сути, и есть язык, который понимает процессор) вообще нет типов
всё что там известно о переменной, это её размер.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969504
a guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Роза
mini.weblab, надо вам с ассемблером немножко познакомиться, там уже совсем всё понятно становится.
указатель на массив, указатель на число, указатель на чар...
во1, это типы. На них никто не указывает.
Понятно, что имеются в виду объекты соответствующих типов.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969517
mini.weblab
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза,
мы говорим про язык С
1.
в С есть объекты, функции и выражения (objects, functions, and expressions)
2.
и объекты, и функции, и выражения имеют тип (данных)
3.
указатель указывает на объект определенного типа.
например,
указатель на целое число, указывает на объект типа целое число
указатель на целочисленный массив указывает на объект типа целочисленный массив
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969553
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a guest
rdb_dev
выражениям, результатом которых является ... тип.
Маразм крепчал.
Поясни - ты сейчас удивлён, что при компиляции результатом оценки выражения glvalue является тип? Я правильно тебя понял?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969580
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза
тут ещё можно добавить, что в асме (который, по сути, и есть язык, который понимает процессор) вообще нет типов
всё что там известно о переменной, это её размер.
При использовании команд FPU, MMX, SSE и т.д. известен ещё и тип представления числа, но не все эти типы имеют эквивалент в C++.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969595
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
Алексей Роза
тут ещё можно добавить, что в асме (который, по сути, и есть язык, который понимает процессор) вообще нет типов
всё что там известно о переменной, это её размер.
При использовании команд FPU, MMX, SSE и т.д. известен ещё и тип представления числа, но не все эти типы имеют эквивалент в C++.

Я-бы сказал что в Ассемблере известен тип регистра в который будет загружена сырая память.

Но это настолько далеко от С++ и современных ЯП что мне вообще непонятно зачем мы втащили
сюда Ассемблер. Что мы этим сможем доказать - непонятно.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969623
a guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
rdb_dev, добрые дяди в белых халатах тебе всё тебе пояснят про текущие расценки на выражения, результатом которых являются типы.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969665
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
a guest, иными словами, ты слился? Ну, Ok...
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969707
mayton
rdb_dev
пропущено...
При использовании команд FPU, MMX, SSE и т.д. известен ещё и тип представления числа, но не все эти типы имеют эквивалент в C++.

Я-бы сказал что в Ассемблере известен тип регистра в который будет загружена сырая память.

Но это настолько далеко от С++ и современных ЯП что мне вообще непонятно зачем мы втащили
сюда Ассемблер. Что мы этим сможем доказать - непонятно.

затем, что мы можем судить о том, как именно работают указатели, только по скомпилированному коду.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969726
a guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Роза
затем, что мы можем судить о том, как именно работают указатели, только по скомпилированному коду.
Кто "мы"?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969732
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза
mayton
пропущено...

Я-бы сказал что в Ассемблере известен тип регистра в который будет загружена сырая память.

Но это настолько далеко от С++ и современных ЯП что мне вообще непонятно зачем мы втащили
сюда Ассемблер. Что мы этим сможем доказать - непонятно.

затем, что мы можем судить о том, как именно работают указатели, только по скомпилированному коду.

Ммм... это просто частный случай. Компиллятор под x86 соберет один код а ARM соберет другой.

Мы не можем рассматривать бинарник как доказательство конепций компиллятора.

А в данном топике стоит вопрос именно концептуальный.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969741
и как вы предлагаете искать, куда там указатель указал?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969746
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза
и как вы предлагаете искать, куда там указатель указал?

Да я этим не занимаюсь никогда. Если мне надо проверить - я пишу модульный тест.

Я не разбираю компиллятор на атомы. Мы же в форуме - прикладные разработчики? Верно?

Или среди вас есть те кто хотят свои компилляторы создавать?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969753
a guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mayton
Алексей Роза
и как вы предлагаете искать, куда там указатель указал?

Да я этим не занимаюсь никогда. Если мне надо проверить - я пишу модульный тест.

Я не разбираю компиллятор на атомы. Мы же в форуме - прикладные разработчики? Верно?

Или среди вас есть те кто хотят свои компилляторы создавать?
Тем тем более в первую очередь нужно смотреть в стандарт.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969786
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В идеале - де. Топик начался с вопроса

указатель на массив. что это такое ?

Тоесть мы должны открыть стандарт где описывается хотя-бы обобщённыей синтаксический шаблон
и просто перевести его на русский язык.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969810
ладно, зайдём с другой стороны...
разве асм не даст нам ответа на вопрос "указатель на массив, что это такое" ?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969813
a guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Роза
ладно, зайдём с другой стороны...
разве асм не даст нам ответа на вопрос "указатель на массив, что это такое" ?
Кому "нам"?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969815
mini.weblab
указатель указывает на объект определенного типа.

да накой ему тот объект? какая такая важная информация там? он указывает на ячейку памяти с данными.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969818
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Розаразве асм не даст нам ответа на вопрос "указатель на массив, что это такое" ?

Нет, не даст. У него все указатели это void*.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969820
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза
ладно, зайдём с другой стороны...
разве асм не даст нам ответа на вопрос "указатель на массив, что это такое" ?

В Clang какой Asm? Там - еще один уровень абстракций.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969827
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton, LLVM использует собственный ассемблер - платформонезависимый. После, подобно ГНУСу, оптимизирует, компилирует в псевдокод и транслирует в платформозависимый бинарный образ. Как-то так, если мне не изменяет память.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969830
a guest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Роза, угомонись с ассемблером уже плз.
http://port70.net/~nsz/c/c11/n1570.html#6.2.5p20 Any number of derived types can be constructed from the object and function types, as follows:
...
— A pointer type may be derived from a function type or an object type, called the referenced type. A pointer type describes an object whose value provides a reference to an entity of the referenced type . A pointer type derived from the referenced type T is sometimes called ''pointer to T ''. The construction of a pointer type from a referenced type is called ''pointer type derivation''. A pointer type is a complete object type.
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969833
теперь ещё новое понятие появилось "тип указателя"...
на простом и понятном языке всё объяснено на 100500 экранах.
стало намного легче.
они говорят, что данные на самом деле хранятся внутри объекта (который type)?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969834
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rdb_dev
mayton, LLVM использует собственный ассемблер - платформонезависимый. После, подобно ГНУСу, оптимизирует, компилирует в псевдокод и транслирует в платформозависимый бинарный образ. Как-то так, если мне не изменяет память.

Правильно. Яж про это и говорю. В 70-е С и С++ создавались с целью - вытеснить
ассемблер. Цель достигнута. Но на этом не остановились. Целевой бинарный код
тоже дорого стоит и его разделили на уровни. Теперь С++, Haskel, Rust, Scala
(и возможно уже некоторые браузерные JavaScript машинки) умеют
продуцировать LLVM который на выходе выдаст целевой ассемблер.

(В скобках замечу - выдающий потрясающую производительность. Почти не
уступающую классическому подходу. И бенчмарк где-то есть)


Таким образом количество абстракций которые проброшены между массивов
и целевым бинарным кодом стало еще на 1 больше.

Наблюдая такой тренд я могу утверждать что С++(Clang ) самоустранился от конкретики
ассемблера. Ему ассемблер уже не нужен чтобы решить задачу.

Так зачем мы в качестве доказательства приводим этот далеко не первый уровень
артифактов?
...
Рейтинг: 0 / 0
указатель на массив. что это такое ?
    #39969836
rdb_dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton
Правильно. Яж про это и говорю. В 70-е С и С++ создавались с целью - вытеснить
ассемблер. Цель достигнута. Но на этом не остановились. Целевой бинарный код
тоже дорого стоит и его разделили на уровни. Теперь С++, Haskel, Rust, Scala
(и возможно уже некоторые браузерные JavaScript машинки) умеют
продуцировать LLVM который на выходе выдаст целевой ассемблер.
Именно так! ВКонтакте даже использует свой PHP-frontend LLVM'а.

mayton
Наблюдая такой тренд я могу утверждать что С++(Clang ) самоустранился от конкретики
ассемблера. Ему ассемблер уже не нужен чтобы решить задачу.
И тем не менее, добавленная абстракция, это, всё-таки, ассемблер, хоть и платформонезависимый и все фронтэнды LLVM'а используют именно мнемонику этого ассемблера.
...
Рейтинг: 0 / 0
25 сообщений из 158, страница 5 из 7
Форумы / C++ [игнор отключен] [закрыт для гостей] / указатель на массив. что это такое ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]