Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Однако допустили :) Цитирую спецификацию (+)
Отправлено
SM
14 апреля 2008 г. 14:15
В ответ на:
А Вы не знали? Любой мнгогомерный массив можно представить как одномерный состоящий из массивов меньшей размерности. Разработчики С не могли допустить такой избыточности в пуританском языке. ;)
отправлено Oldring 14 апреля 2008 г. 14:13
Successive subscript operators designate an element of a multidimensional array object
Составить ответ
|
Вернуться на конференцию
Ответы
Просто в последних редакциях стандарта назвали многомерными массивами, для удобства.
—
Oldring
(14.04.2008 14:25:40
91.76.16.207
, 745 байт)
Главное то, что (+)
—
SM
(14.04.2008 14:39:49
80.92.255.53
, 260 байт)
Это геморрой, а не естественность.
—
Oldring
(14.04.2008 14:42:53
91.76.16.207
, 120 байт)
Кому как. Для меня С-шное размещение удобно, понятно и естественно, когда самый "дальний" индекс дает наименьший инкремент адреса.
—
SM
(14.04.2008 14:50:25
80.92.255.53
,
пустое
)
Это расходится с наиболее употребимым математическим взглядом на матрицу как на набор вектором - столбцов.
—
Oldring
(14.04.2008 14:53:31
91.76.16.207
, 109 байт)
Во-во, из-за этого замучался в свое время с фортраном, а потом и матлаб все время мозги этим пудрит.
—
SM
(14.04.2008 14:57:15
80.92.255.53
,
пустое
)
А логичность видится в том, что каждый оператор индексации уменьшает размерность массива на единицу.
—
SM
(14.04.2008 15:03:4
80.92.255.53
,
пустое
)
"Уменьшение размерности на 1 при индексации" - это изобретение авторов С :)
—
Oldring
(14.04.2008 15:04:32
91.76.16.207
,
пустое
)
Причем гениальное :)
—
SM
(14.04.2008 15:07:13
80.92.255.53
,
пустое
)
Эта "гениальность" - в пользу простоты компилятора, не более того.
—
Oldring
(14.04.2008 15:10:13
91.76.16.207
,
пустое
)
И простоты понимания происходящего. Было бы странно, что если бы (+)
—
SM
(14.04.2008 15:12:31
80.92.255.53
, 88 байт)
Чему противоречит a(1, 2, 3)?
—
Oldring
(14.04.2008 15:14:12
91.76.16.207
,
пустое
)
Зачем плодить лишние сущности - аналогичная функциональность обеспечивается по-другому. А желающие извращений могут через #define сделать такую запись.
—
SM
(14.04.2008 15:20:22
80.92.255.53
,
пустое
)
Вот-вот, и пуристы K&R так же рассуждали.
—
Oldring
(14.04.2008 15:21:41
91.76.16.207
,
пустое
)
И правильно рассуждали. Каждый желающий изврата - сам себе и по своему его сделает.
—
SM
(14.04.2008 15:34:48
80.92.255.53
,
пустое
)
Вот и получился изврат.
—
Oldring
(14.04.2008 15:36:3
91.76.16.207
, 71 байт)
Норма - это когда необходимый и достаточный минимум. Остальное извраты.
—
SM
(14.04.2008 15:40:7
80.92.255.53
,
пустое
)
Это - извращение. Профессиональный инструмент должен быть удобным, а не минимальным или максимально универсальным.
—
Oldring
(14.04.2008 15:42:33
91.76.16.207
, 122 байт)
Вот именно. удобным, а основной критерий удобства - скорость написания программы. IMHO максимум этого параметра для подавляющего большинства случаев именно у С. Естественно, что где-то может и бейсик необходим, а где-то фортран удобнее, но это 1 из 1000.
—
SM
(14.04.2008 15:46:15
80.92.255.53
,
пустое
)
Скорость написания программы - это критерий только для одноразовых программ.
—
Oldring
(14.04.2008 15:50:9
91.76.16.207
, 220 байт)
Одноразовых программ не бывает. (точнее у меня не было). (+)
—
SM
(14.04.2008 15:57:10
80.92.255.53
, 201 байт)
А "гарантия и поддержка" бывают несколько разными по трудоемкости, в зависимости от количества проданных копий.
—
Oldring
(14.04.2008 16:02:43
91.76.16.207
,
пустое
)
А сколько бы копий не было продано, все равно, исправлять одну программу, труд программиста тот же. А обслуживать жалобщиков - так это и вообще без ошибок работы хватит.
—
SM
(14.04.2008 16:09:31
80.92.255.53
,
пустое
)
А вот количество обнаруживаемых клиентами глюков пропорционально клиентской базе.
—
Oldring
(14.04.2008 16:11:52
91.76.16.207
,
пустое
)
Да ну нафиг. Один дотошный клиент выцепит ошибок на порядок больше, чем сотни других юзеров, не отходящих ни на шаг от документации, согласно которой все тестировалось перед выпуском.
—
SM
(14.04.2008 16:16:16
80.92.255.53
,
пустое
)
Это кто из массовых клиентов документацию читает? ;)
—
Oldring
(14.04.2008 16:20:59
91.76.16.207
, 145 байт)
Читают, читают. Когда пользователи - службы безопасности, они по-другому не умеют :)
—
SM
(14.04.2008 16:23:49
80.92.255.53
,
пустое
)
Ну, это спецконтингент :)
—
Oldring
(14.04.2008 16:25:4
91.76.16.207
,
пустое
)
Все делают ошибки. Если Вы считаете что их не делаете - значит, Вы никогда не писали чего-нибудь достаточно сложного. Это - аксиома.
—
Oldring
(14.04.2008 15:58:41
91.76.16.207
,
пустое
)
Я не считаю, что не делаю ошибок, (+)
—
SM
(14.04.2008 16:07:25
80.92.255.53
, 523 байт)
Интересная конструкция.
—
Oldring
(14.04.2008 16:11:0
91.76.16.207
, 369 байт)
Нет, это означает, что ошибка в алгоритме, а не описка.
—
SM
(14.04.2008 16:14:1
80.92.255.53
,
пустое
)
По поводу ошибок алгоритмов (+)
—
Oldring
(14.04.2008 16:19:20
91.76.16.207
, 341 байт)
Вот как раз (+)
—
SM
(14.04.2008 16:28:52
80.92.255.53
, 513 байт)
Да нет - стандартные алгоритмы потому и стандартные что хорошо протестированы.
—
Oldring
(14.04.2008 16:31:45
91.76.16.207
, 105 байт)
Угу, показала жизнь... Что паскаль, ада, и прочее такое почти вымерло, а С процветает.
—
SM
(14.04.2008 16:35:2
80.92.255.53
,
пустое
)
Смотря для чего процветает.
—
Oldring
(14.04.2008 16:39:7
91.76.16.207
, 241 байт)
Не смотря, для чего, а вообще. Если брать все пишущиеся и поддерживаемые программы в целом для всех возможных платформ и систем.
—
SM
(14.04.2008 16:41:2
80.92.255.53
,
пустое
)
то наверное сейчас победят скрипты в HTML ;)
—
Oldring
(14.04.2008 16:43:31
91.76.16.207
,
пустое
)
Тут я согласен с Oldring. Сам офигевал от такого изврата. До сих пор вызывает внутреннее отторжение.
—
Codavr
(14.04.2008 14:52:38
89.179.44.141
,
пустое
)
Этот изврат - следствие желания разработчиков языка обойтись только одномерными массивами.
—
Oldring
(14.04.2008 14:57:12
91.76.16.207
,
пустое
)
Нифига подобного. Это всего навсего облегчение рабыты парсеру. Если бы не это то пофигу в каком порядке чего с чем перемножать/складывать
—
Codavr
(14.04.2008 15:08:55
89.179.44.141
,
пустое
)
И я об этом. Простота компилятора была поставлена разработчиками языка на первое место.
—
Oldring
(14.04.2008 15:11:38
91.76.16.207
, 144 байт)
И, самое главное, облегчение понимания происходящего (расставив скобки после каждого оператора индекса все становится сразу предельно ясно).
—
SM
(14.04.2008 15:11:1
80.92.255.53
,
пустое
)
Пока не приходится одним глазом в книгу набитую тензорами заглядывать а другим в монитор зырить.
—
Codavr
(14.04.2008 15:17:45
89.179.44.141
,
пустое
)
Еще когда борланд свой первый С++ там уже можно было написать A[3][5] и все проканывало.
—
Codavr
(14.04.2008 14:30:28
89.179.44.141
,
пустое
)
Правда тогда интернета не было, и стандартов никто в глаза не видел :)
—
Codavr
(14.04.2008 14:32:23
89.179.44.141
,
пустое
)
Еще до Borland существовала тоненькая синенькая книжечка ;)
—
Oldring
(14.04.2008 14:39:42
91.76.16.207
,
пустое
)
Я об этой конструкции и пишу. Одномерный массив одномерных массивов.
—
Oldring
(14.04.2008 14:31:48
91.76.16.207
,
пустое
)
А что тогда истинно многомерный массив в одномерной памяти?
—
Codavr
(14.04.2008 14:34:1
89.179.44.141
,
пустое
)
В некоторых языках есть такая конструкция.
—
Oldring
(14.04.2008 14:38:50
91.76.16.207
, 280 байт)
Аааа. Алгол почивший в бозе. Сую куда в голову взбредет, а скока АЛУ потом это разгребать будет до фени. Я думал споры о "правильном" языке вместе с ним умерли.
—
Codavr
(14.04.2008 14:47:56
89.179.44.141
,
пустое
)
Круче всех было в PL/1
—
vitalyn
(14.04.2008 15:14:36
195.140.182.162
, 563 байт)
Да еще куча есть. "язык Ада" например :) - очень точно назвали, адская штука - и его порождение VHDL.
—
SM
(14.04.2008 14:51:53
80.92.255.53
,
пустое
)
Отличный язык. Жаль, не получил широкое распространение по историческим причинам.
—
Oldring
(14.04.2008 14:54:15
91.76.16.207
,
пустое
)
Сделай на нём вывод строки "Привет, мир!"
—
vitalyn
(14.04.2008 15:05:14
195.140.182.162
, 74 байт)
Сделай то же самое с С в консоль под Виндами.
—
Oldring
(14.04.2008 15:15:13
91.76.16.207
,
пустое
)
легко
—
vitalyn
(14.04.2008 15:17:0
195.140.182.162
, 88 байт)
В кодировке русских букв.
—
Oldring
(14.04.2008 15:18:27
91.76.16.207
, 90 байт)
Ну да, согласен... ЁштхЭ, ЬшЁ! Но это засада Винды, а не языка.
—
vitalyn
(14.04.2008 15:31:9
195.140.182.162
, 184 байт)
Язык неотрывен от среды исполнения. И любые проблемы с несовместимостью тут же становятся проблемами программиста.
—
Oldring
(14.04.2008 15:40:48
91.76.16.207
, 140 байт)
угу, наилучший способ замучать программиста до состояния невменяемости :)
—
SM
(14.04.2008 14:58:39
80.92.255.53
,
пустое
)
Начинающего программиста - да. Да и хорошо.
—
Oldring
(14.04.2008 15:02:15
91.76.16.207
,
пустое
)
А кончающего - тем более. Кто же согласится писать вдвое больше букаф для достижения того же результата? :) Начинающего как раз проще убедить в том, что все эти навороты есть необходимые вещи, а не банальные излишества.
—
SM
(14.04.2008 15:05:39
80.92.255.53
,
пустое
)
Человек, понявший, что лучше написать больше букв самому, но меньше протрахаться с ловлей связанных с опечатками другого программиста трудноуловимых багов.
—
Oldring
(14.04.2008 15:13:22
91.76.16.207
,
пустое
)
Демагогия это. И на асме сколько всего написано, надежно и безошибочно работающего. Это вопрос лишь опыта и умения. А ады эти все - хорошее средство для изнасилования студентов с целью отвадить их от программирования.
—
SM
(14.04.2008 15:16:57
80.92.255.53
,
пустое
)
Студентов надо сначала учить программировать на Ассемблере, потом на Pascal, а потом уж дать им С
—
vitalyn
(14.04.2008 15:23:1
195.140.182.162
, 588 байт)
Вначале бейсик (только обычный без вижуальных наворотов) и дос чтобы мозги виндой не засирать, а потом пусть выбирают кому что по душе.
—
Codavr
(14.04.2008 15:32:31
89.179.44.141
,
пустое
)
Не согласен. Моё личное мнение, что бейсик - это просто недоразумение какое-то!
—
vitalyn
(14.04.2008 15:35:53
195.140.182.162
, 167 байт)
Если бы тебе в школе сразу с ТФКП давати, чтобы ты не думал потом, что числа только целые бывают?
—
Codavr
(14.04.2008 17:11:38
89.179.44.141
,
пустое
)
+100. Сначала - принципы устройства процессоров, инструкции, АЛУ, и т.п. недра, только потом допуск к чему-то уровнем выше.
—
SM
(14.04.2008 15:42:58
80.92.255.53
,
пустое
)
С тобой в школе можно попроще обойтись. Начать с квантовой механики, а не поймешь потом как транзисторы в процессоре работают.
—
Codavr
(14.04.2008 17:18:11
89.179.44.141
,
пустое
)
Тут другое. (+)
—
SM
(14.04.2008 17:31:40
80.92.255.53
, 511 байт)
В принципе тоже согласен, кроме C++, если речь о подготовке программиста "вообще", а не со специализацией на микроконтроллеры, то плюсы необходимы.
—
SM
(14.04.2008 15:31:33
80.92.255.53
,
пустое
)
В принципе - согласен.
—
Oldring
(14.04.2008 15:28:5
91.76.16.207
,
пустое
)
Я не думаю, что у Вас достаточно опыта как программиста чтобы так рассуждать.
—
Oldring
(14.04.2008 15:20:24
91.76.16.207
, 148 байт)
Не Вам судить о моем опыте.
—
SM
(14.04.2008 15:29:16
80.92.255.53
,
пустое
)
И, кстати, хреново Вы знаете, и в результате распространяете дезинформацию. В гран-при велся именно большой совместный проект, вот этот, по ссылке (+)
—
SM
(14.04.2008 15:39:17
80.92.255.53
, 248 байт,
ссылка
)
Вы в нем участвовали прежде всего как электронщик, а не как программист.
—
Oldring
(14.04.2008 15:47:27
91.76.16.207
, 155 байт)
А у нас тут вообще-то конференция именно тех, кто прежде всего электронщик. А DLL+дрова (+)
—
SM
(14.04.2008 15:51:35
80.92.255.53
, 307 байт)
Конференция - электронщиков, а тема - по языкам программирования.
—
Oldring
(14.04.2008 15:57:16
91.76.16.207
, 326 байт)
Да как раз наоборот (+)
—
SM
(14.04.2008 16:22:21
80.92.255.53
, 544 байт)
Опять же.
—
Oldring
(14.04.2008 16:29:20
91.76.16.207
, 312 байт)
Ответ: (+)
—
SM
(14.04.2008 16:34:10
80.92.255.53
, 457 байт)
Вопрос.
—
Oldring
(14.04.2008 16:36:19
91.76.16.207
, 55 байт)
Нет. Уже года два. Так, изредка бесплатно консультирую по тем подсистемам, которые я там вел.
—
SM
(14.04.2008 16:38:56
80.92.255.53
,
пустое
)
Вопрос 2.
—
Oldring
(14.04.2008 16:40:18
91.76.16.207
, 134 байт)
Я поддерживал года 3-4. Теперь там другой человек.(+)
—
SM
(14.04.2008 16:51:23
80.92.255.53
, 205 байт)
А стиль программирования у него такой же?
—
Oldring
(14.04.2008 16:54:5
91.76.16.207
, 199 байт)
(+)
—
SM
(14.04.2008 17:00:37
80.92.255.53
, 597 байт)
(+)
—
Oldring
(14.04.2008 17:04:26
91.76.16.207
, 199 байт)
Ну (+)
—
SM
(14.04.2008 17:13:37
80.92.255.53
, 332 байт)
(+)
—
Oldring
(14.04.2008 17:20:1
91.76.16.207
, 308 байт)
(+)
—
SM
(14.04.2008 17:35:28
80.92.255.53
, 362 байт)
(+)
—
Oldring
(14.04.2008 17:42:34
91.76.16.207
, 465 байт)
Естессно (+)
—
SM
(14.04.2008 18:05:1
80.92.255.53
, 182 байт)
(+)
—
Oldring
(14.04.2008 18:14:49
91.76.16.207
, 219 байт)
Я же ведь сразу сказал (+)
—
SM
(14.04.2008 18:20:38
80.92.255.53
, 385 байт)
В вашем - наверное.
—
Oldring
(14.04.2008 18:24:4
91.76.16.207
, 152 байт)
(++)
—
Oldring
(14.04.2008 17:44:34
91.76.16.207
, 295 байт)
Да в остальном хотя-бы какая-то логика присутсвует...
—
Oldring
(14.04.2008 16:21:56
91.76.16.207
,
пустое
)
Жопа там, увы, не одна :)
—
smb
(14.04.2008 16:18:43
212.5.70.188
,
пустое
)
Вы не слышали про Java? ;)
—
Oldring
(14.04.2008 14:51:48
91.76.16.207
,
пустое
)
Слышал, но не пробовал. А что там тоже? Извращенцы. Поди с распределенным хранением данных завязано?
—
Codavr
(14.04.2008 14:54:16
89.179.44.141
,
пустое
)
Там вообще виртуальные машины интерпретируют байт-код, и никакой привязки к АЛУ процессора.
—
Oldring
(14.04.2008 14:56:18
91.76.16.207
, 148 байт)
А при чем тут массивы? Что то я не вкурил
—
Codavr
(14.04.2008 15:11:25
89.179.44.141
,
пустое
)
Ни при чем. Это к фразе про разгребающее АЛУ.
—
Oldring
(14.04.2008 15:16:3
91.76.16.207
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 13:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru