Поздравляем Dingo с днём рождения!
- Оказывается, есть способ сжатия данных под названием brotli.
Поддерживается современными браузерами где-то с 2016 года. Вот
пример: SciFi(307 знак., 07.10.2020 12:54, dao, ссылка, полностью)
- ООП -- бяка. То, о чём все догадывались, но боялись сказать вслух: - SciFi(03.10.2020 12:08, dao, youtube, полностью)
- ООП это Объект! а не Инкапсуляция-Полиморфизм-Наследования, иначе
ООП называлось Инкапсуляционно полиморфически наследовательно
ориентированное программирование. - IBAH(05.10.2020 14:06)
- Подозреваю, что там КГ/АМ, он просто не осилил суть, что
подтверждает 30% дизлайков. А осилить суть ООП непросто, я ща все
еще учусь на курсах Java/Android, а параллельно аспирантю у младших
групп по java. Отсеивается 80-90%. Argon(126 знак., 04.10.2020 21:08)
- инкапсуляцией, полиморфизмом и наследование никак не связано ООП.
Многие считают что ООП==С++. IBAH(156 знак., 05.10.2020 14:06)
- Процент отсева кандидатов в правоверные адепты как признак
истинности учения – это пять. - SciFi(04.10.2020 21:15)
- Имхо хватит уже этой вкусовщины. Пора переходить к автоматической
оценке качества кода на основе алгоритмов машинного обучения. s_h_e(196 знак., 04.10.2020 23:49)
- Эээ, не надо передергивать! Не признак истинности, а признак
сложности в освоении (что, кстати, минус ООП). Однако, каждому
свое. Для МК, даже с 1Мб флэши ООП нафиг не сдалось. - Argon(04.10.2020 21:27)
- О господи, "ООП не осилили". Я понимаю, вы бы страдали какой-нибудь
шаблонной метамагией из C++20. lloyd(117 знак., 05.10.2020 17:58)
- Заставь дурака богу молиться -- лоб себе расшибёт. ООП это лишь
парадигма. То как ты будешь смотреть на код. От её (не)применения
мало что меняется, если до крайностей не доходить. - fk0(05.10.2020 11:01)
- Почему для МК ООП не надо? - evgeniy1294(04.10.2020 21:40)
- Не знаю как в C++, а в Java просто капец какой оверхед. В
компилированном коде, говорят, сохраняются все имена
переменных/методов/классов. Argon(386 знак., 04.10.2020 22:00)
- Вот в этом и отличие C++ от C# или Java. В том, что в последних
"капец какой оверхед". - fk0(05.10.2020 11:08)
- В C++ оверхед как правило нулевой, а иногда и отрицательный,
например std::sort() vs qsort(). - йцyкeн(04.10.2020 22:55)
- А если нужно сделать 10 сортировок разных типов данных/предикатов и
флеша для кода в обрез? - Kabdim(05.10.2020 12:41)
- Кстати отличный пример, когда C++ с шаблонами обставляет другие
языки. А то тут один товарищ утверждал, мол метапрограммирование не
нужно. - fk0(05.10.2020 11:06)
- Ну и чего ты продолжаешь передергивать? Если ты вдруг забыл, я
писал что МП плох в простоте и безошибочности использования и это
огромная проблема. Но его безальтернативность в С++ очевидна. У нас
разные точки зрения и ничего плохого в этом нет. - Kabdim(05.10.2020 12:52)
- Следуя такой логике, язык PIC18 -- совершенно безошибочный, там
всего-то 35 простых инструкций... fk0(58 знак., 06.10.2020 02:13)
- Неа, следуя твоей логике я бегаю по саванне с камнем примотанным к
палке и охочусь на мамонтов, потому что так еще проще чем
программировать с МП. ) - Kabdim(06.10.2020 12:37)
- Это нормальная логика, если твоя цель - не надуть до бесконечности
щеки на рынке труда, накачанном очередным биржевым пузырем, а
получить (выдать) полезный результат. - s_h_e(06.10.2020 10:03)
- Полезный результат это такая, очень неопределённая, эфемерная
сущность. В чём он полезный, и как его измерять. В
американизированных фирмах есть такая должность -- product owner.
По идее он, или CTO, с достаточным техническим бэкграундом должны
хорошо понимать жизненный цикл (почти всегда программного)
продукта. Он отнюдь не заключается в том, чтоб просто "любому
студенту написать программу за три месяца", как это часто думают
те, которым нужен быстрый результат. А потом fk0(4420 знак., 06.10.2020 20:38)
- На рынке есть бесконечное множество контор, которым нужен быстрый
результат - лифты, умные дома, контроллеры собачьих будок и прочие
ардуины, там знание языка не нужно. А есть Huawei и Quantenna,
которые пылесосом выкачивают топовых спецов, предлагая зарплаты в
районе 200к. evgeniy1294(128 знак., 06.10.2020 12:32)
- И про них тоже. Есть у них быстрые решения. Нужно через пол года на
рынке продукт. Пусть говно, а не продукт, но если его не вывести на
рынок через пол года -- в следующем году по направлению вообще
работы не будет. Причин почему -- масса, начиная с того, чтоб
направление получило финансирование менеджерам нужна какая-то
демонстрация, нужен фидбэк от продажников и т.д. -- никто не будет
вкладываться непонятно во что, нужно конкурировать за средства с
другими направлениями, fk0(1183 знак., 06.10.2020 20:52)
- Про хуявей не знаю, а куантенна это давно уже онсеми. И нихрена они
про знание языка не спрашивали у меня например, спрашивали в
основном про алгоритмы и понимание общих принципов работы выч.
систем. s_h_e(183 знак., 06.10.2020 12:46)
- Проблема в том, что это "обставляет" в обычной разработке не нужно
(т.е. нужно, но в очень ограниченном наборе сфер). На болидах F1 на
работу никто не ездит. - s_h_e(05.10.2020 12:15)
- подписываюсь! утверждаю что даже для МК с 16к флеша и 2к озу также
работает. ибо ООП не в коде и размере чегото а в форме мышления и
изобразительном инструменте оного. - klen(04.10.2020 23:55)
- Задача ООП состоит в структурировании кода, 1МБ флеша вмещает в
себя сотни тысяч строк кода, организовать такой объём без ООП
непросто. evgeniy1294(311 знак., 04.10.2020 22:41)
- Казалось бы, при чем тут ООП. Чистый ООП очень хорошо ложится на
гуи, которые есть и у микроконтроллеров. - lloyd(04.10.2020 22:11)
- Патамушта ещё не разобрались с неявными приведениями типов в
арифметических выражениях, а вы уже лезете со своим наследованием
:-) - SciFi(04.10.2020 21:45)
- На самом деле, у парня нет возражений против инкапсуляции (и против
полиморфизма, который он не считает эксклюзивом ООП). Основная
претензия к взаимодействию через передачу сообщений. Cкpипaч(966 знак., 04.10.2020 17:47)
- Разные парадигмы программирования лежат на самом деле в
ортогональных плоскостях и одна никак не может заместить другую.
Где-то одна выпирает более явно, где-то другая, но полное отрицание
-- попросту глупо. Не стоит всё натягивать на ООП -- да. Но и
отрицать нельзя. - fk0(03.10.2020 12:31)
- Просто программисты деградируют им уже в ООП не разобраться, скоро
COBOL вернется видимо - OlegPowerC(03.10.2020 12:21)
- когда 2 литра мало , а 4 много ))) как "замутить" переменную на 3
байта ? ))) Aleksey_75(129 знак., 05.10.2020 23:12, dao, полностью)
- Я бы сделал так (это идея, пишу набело, поэтому могут быть ошибки): il-2(420 знак., 07.10.2020 09:02)
- вот так abivan(473 знак., 06.10.2020 17:10)
- Докладываюсь! Сделал так Aleksey_75(492 знак., 06.10.2020 15:18, картинка)
- На 8-битниках работает нормально, на Cortex не проверялось, но
из-за невыровненного доступа возможны нюансы. Chip_n_Go(2342 знак., 06.10.2020 14:12)
- Интересно если внутри структуры сделать три переменные по байту, не
проще ли будет компилятору оптимизировать... - Ralex(06.10.2020 12:43)
- Не проще ли будет сделать нормальную сериализацию и отделть форму
хранения от формы использования? Тут конечно без уверенности т.к.
непонятна реально поставленная задача и все условия. - Kabdim(06.10.2020 12:41)
- Организуешь доступ через функции set/get и хоть LZМ сжимай :) - Cкpипaч(06.10.2020 12:32)
- Мне не видно простых способов сделать через битовы поля. Nikolay801_(791 знак., 06.10.2020 11:01)
- Время тебе не критично. Сколько всего структур? Изобрази связанный
список (в начале каждой структуры во флеш указатель на следующую) и
ни в чем себе не отказывай без таблицы индексов ;) - Гyдвин(06.10.2020 09:11 - 09:36)
- Я писал: нужно делать не массив структур, а структуру массивов.
Тогда в одной структуре сколько угодно байт может быть и доступ
всегда выравненный. fk0(237 знак., 06.10.2020 02:10)
- А какова цель действа? Съэкономить меморей? - mse homjak(05.10.2020 23:52)
- Длинные уши ПИК33 вижу я здесь :-) - Kpoк(05.10.2020 23:34)
- Попался C++ код в таком стиле: AlexG(313 знак., 04.10.2020 21:59, dao, полностью)
- Довольно интересный блог, посвящённый С++. Сеньёрам может быть не
очень полезен, но мужики по-проще могут что-нибудь подчерпнуть. - evgeniy1294(21.09.2020 22:06, dao, ссылка, полностью)
- +1. - fk0(21.09.2020 22:31)
- это я про плюсы! как есть! Aleksey_75(3 знак., 21.09.2020 22:06, youtube)
- За что я люблю C++ - можно использовать его просто как C. Но
понадобится тип bool, опаньки! Оказывается он есть. Понадобится
complex - тоже есть, и формулы пишутся как слышатся. Массив
переменного размера? На здоровье. А иерархию классов городить
совершенно необязательно. Но если вдруг понадобится... ну, вы
поняли. - йцyкeн(21.09.2020 23:19)
- Толковый эмбеддер должен владеть С++ как минимум, как более
выразительным, по сравнению с С, языком программирования. Тем более
язык расширяет возможности программиста, а изучать его традиционно
начинают с подмножества С. Любой программист должен владеть
питоном, уж очень вкусные библиотеки идут с ним в коробке. fk0
ратует за tcl, он тоже часто полезен, как минимум fpga-шникам его
знать надо. В нагрузку идет куча других языков, хочешь добавить
http-сервер в железку - evgeniy1294(115 знак., 21.09.2020 22:31)
- То, что C подмноженство С++ не вполне верно. Более-менее сложный
сишный проект как C++ просто не откомпилируется. - AlexG(22.09.2020 23:34)
- Поздно пить боржоми (с) :)) - MBedder(21.09.2020 23:11)
- Вряд ли вас заинтересует С++ без stl:: std:: boost:: не знаю чего
там еще напридумывали. Да и питон без библиотек вряд ли вызовет
желание в нем ковыряться. Это я к тому, что иногда сам язык не так
ценен, как идущий в комплекте с ним доступ к определенным
библиотеками, и больше знать надо не сам язык, а какие есть готовые
решения, использующие его. - AlexBi(21.09.2020 23:11)
- Даже в толстые кортекс-м0 можно положить eastl вместе с
использующей её прошивкой. - Kabdim(22.09.2020 13:17, ссылка)
- C++ без STL (который перекочевал в std::) вполне ценен. А boost по
большей части -- очень экспериментальная штука, чаще не особо
нужная для реальных проектов (кусочек содрать можно, остальное --
не нужно). Ценность C++ в том, что он позволяет то, что не
позволяют другие языки. Сам по себе, без библиотек. - fk0(22.09.2020 00:11)
- ps Ещё вопрос. Вот в бейсике есть встроенные функции синус/косинус
и протчая. А в плюсах они есть? (без библиотек, когда плюс сам по
себе). И что такого может сделать С++, чего не могут сделать Бейсик
с Паскалем, Фортраном и Ассемблером? - argus98(22.09.2020 21:33)
- В C++ доступна вся C-библиотека. Когда C++ сам себе разумеется нет,
а как ты себе представляешь? Можешь написать свою реализацию... Что
может C++, чего не могут другие: fk0(3338 знак., 23.09.2020 00:30, ссылка, ссылка)
- Не могу согласится со всем. Kabdim(1039 знак., 25.09.2020 11:46)
- Твоё сообщение не содержит никакой осмысленной аргументации.
"Багодром, в современных языках заменено, вскрывающееся зло,
выстрелы в ногу, рукожопы..." -- это лишь _твоя_ оценка,
субъективная. Теперь по пунктам: fk0(4024 знак., 25.09.2020 12:58)
- Добавлю про метопрограммирование. Когда я по взглядам был ближе к
твоей точке зрения, понадобилось мне не простая, но и не сложная
парсилка текста. Решил сделать библиотекой на мете, а именно на
boost::Spirit. Получалось красиво, но по мере приближения %
реализованного к задуманному время компиляции не сложного проекта
уверенно подбиралось к 10 минутам. Что приводило к чудовищным
потерям моих временных ресурсов. Это изрядно меня озадачило, сделал
то же самое руками, Kabdim(562 знак., 25.09.2020 16:09)
- Ты пытаешьсая упорно подвести к тезису, мол в языке есть некоторый
функционал позволяющий выстрелить себе в ногу, ты сам лично пару
ног себе отстрелил, поэтому язык негодный и плохой, а ровно такие
же языки только без этого функционала -- мол лучше. Потому, что
выстрелить в ногу нельзя. Чушь. Считаешь функционал лишним, не
нужным -- можешь его попросту не использовать. В данном конкретном
случае. Потому, что в общем это не совсем так, в общем он далеко не
лишний, т.к. fk0(1140 знак., 02.10.2020 10:06)
- Обычно все кто мне встречался приходили к примерно тем же выводам,
без необходимости внешних аргументов. Ну ладно, требование
аргументировать оно рациональное и правильное. Kabdim(3154 знак., 25.09.2020 13:47)
- Метапрограммирование не решается внешним шаблонизатором. Потому,
что последний работает исключительно на уровне исходного текста.
Это совсем не то, потому, что шаблоны в C++ работают не на уровне
отдельных буковок, а в пространстве типов языка. Это совсем другая
история. Чтоб повторить то же самое во внешнем макропроцессоре на
нём придётся написать половину компилятора C++, что очевидно
невозможно. Внешний шаблонизатор не сможет, например, генерировать
разный код в fk0(471 знак., 02.10.2020 10:43)
- В чём кошмар? Оптимизатор не идеален и работает как может? И в чём
проблема? Лучше так, чем никак. На других языках часто получается
вообще никак, всегда плохонько оптимизированный код. C++ даёт
возможность, но насколько она будет использована -- влияет масса
других факторов. Но хотя бы сама возможность она есть. У других же
и теоретической возможности нет оказывается. И зачем сразу
ассемблер. Он нужен чтоб посмотреть его и разобраться, и в
исходнике на C++ подтолкнуть fk0(430 знак., 02.10.2020 10:33)
- С другими языками и совместимостью с C -- большие проблемы из-за: fk0(945 знак., 02.10.2020 10:27)
- Так или иначе C++ широко используется при создании ОС и компонентов
ОС. На C++ вообще хотя бы возможно создавать ОС. Ничего никуда
"падать" при нормальном программировании не должно. Там самая
большая проблема на самом деле -- ABI. Поэтому интерфейсы должны
оставаться сишными. Создать же ОС на Java или C# прямо скажем
сложно... Многие RTOS написаны на C++. - fk0(02.10.2020 10:19)
- Следуя такой логике (пункт 1) язык C нужно вообще закопать. В руках
вчерашнего студента он может быть ещё более страшен. Но ведь живёт
и здравствует. У каждого своя ниша. Очевидно, что C++ в ту область,
где работают студенты с околонулевым опытом -- не попадает. Это
язык для профессионалов с многолетним опытом работы. Это язык для
создания высокоэффективных и надёжных программ. Он не эффективерн в
области "веб дизайна" (высокая сложность и низкая скорость
разработки), в fk0(496 знак., 02.10.2020 10:15)
- какие книги Вы читаете, что так гладко и по делу излагаете? - Constantin24(24.09.2020 21:43)
- Спасибо! Отлично написал! - Evgeny_CD(23.09.2020 00:35)
- Вообще есть, гуглится через cmath. Бейсик с паскалем годятся только
для обучения детей информатике, фортран был вытеснен питоном.
Ассемблер очень спецефическая вещь, чаще он нужен для того, чтобы
понять, как компилятор представляет ваш код. Для задействования
аппаратных фишек платформы ( обычно через интрисиксы ) нужен, ещё
хакерам он нужен. evgeniy1294(63 знак., 22.09.2020 21:48)
- На С++ я могу написать управление стира(те)льной машиной и
уложиться в 2K озу и 32K пзу, из перечисленных Вами языков это
можно сделать только на Паскале, с натяжкой. На ассемблере тоже
можно, но если машина будет стирать не то, что нужно - ошибку найти
нелегко, да и модернизировать сложно, ну, чтоб стирала помимо
самолетиков, ракетки какие-нибудь :) - Xитpый Kитaeц(22.09.2020 21:46)
- А что, в плюсах уже есть сложение/вычитание/сдвиги с переносом? - argus98(22.09.2020 21:02)
- Очуметь какая проблема! У некоторых процессоров нет флага переноса!
Например у MIPS. И ничего, живут же как-то. - fk0(22.09.2020 21:06)
- Херово живут... Вместо переноса/заёма генерируют прерывание.
Обалдеть, какое революционное решение - argus98(22.09.2020 21:25)
- Прерывание совсем не для этого, а для обнаружения/обработки ошибок.
Если нужно складывать, например, "многорегистровые" числа без флага
переноса, то это делается через лишнюю одну арифметическую операцию
(a += b, carry = a < b), если нужна ротация, для CRC,
например, то тоже лишняя операция (carry = !!(a & INT_MIN), a
<<= 1). Не так уж и фатально. Потому, что в практическом
коде операции с переносом редко встречаются. - fk0(23.09.2020 00:41)
- так и запишем! Леха уйвый программист ))) но я собственно и не
претендую ) - Aleksey_75(21.09.2020 22:36)
- Сегодня вдруг узнал, что .zip умеет не только DEFLATE. Там есть и
bzip2, и LZMA, например. Раньше если казалось, что zip плохо
сжимает, использовал rar, а оказалось, что это лишнее. - SciFi(01.10.2020 13:39, dao, ссылка, полностью)
- Ты PKZIP видел? Вот DEFLATE -- это лучшее что там есть. Остальное
-- местечковые модификации, которых не найдётся в другом месте. - fk0(02.10.2020 09:52)
- а мне RAR нравится больше (и сжимает хорошо + информация для
восстановления (но чтобы реально помогало, нужно ставить по
максимуму (10% вроде и минимальную степень сжатия - вот такой
парадокс, но плюсом - единый архив, чуть более стойкий к
повреждениям :) и быстрая распаковка.), и ещё к архиву у меня
всегда добавляется метка времени - очень удобно. Adept(1 знак., 01.10.2020 22:08 - 02.10.2020 00:02, картинка)
- А 7z и LZMA2 BlackPrapor(324 знак., 01.10.2020 21:34)
- Ну да. Это я обрадовался раньше времени, когда виндовс показал
файлы в архиве. А распаковать не может. UPD: Там ещё интереснее.
Если при распаковке заменяется существующий файл, то он стирается,
распаковка заканчивается ошибкой с абстрактным номером, и нет ни
старого файла, ни нового. Это прекрасно. - SciFi(02.10.2020 20:06)
- А чем стандартно положено распаковывать zip- и gz-архивы? (WinZip
не предлагать - слишком уж он велик). - Kceния(01.10.2020 21:44)
- Стандартно встроенным в ос распаковщиком. - BlackPrapor(01.10.2020 22:09)
- И где он там встроен? Мышкой снова по иконкам сучить? Нужна
программа, вызвав которую в командной строке (в составе командного
файла), можно было распаковать заархивированный файл. Старые
программы типа PKZUP.exe или PKUZUP.exe - 16-разрядные, под Win7
они не запускаются. А 7zip, чтобы заработал, инсталлировать сперва
надо, а этому конечного пользователя обучить невозможно, тем паче,
что у него и прав на компьютере для этого может не быть. Тогда как
мне нужно, чтобы Kceния(214 знак., 02.10.2020 15:30)
- Я использую PKZIP25.exe (от 1998) gzip.exe (1.3.2 от 2007). Под х86
и 64 никаких проблем нет. - Costic(03.10.2020 15:03)
- 7Zip, кагбэ, опенсорц. Есть упаковщики-распаковщики на любой вкус,
цвет, ОС и вообще. Уже много лет только его и пользую, чуть менее
чем везде. - LightElf(02.10.2020 18:16)
- Бл Гец рекомендуэ - General(02.10.2020 16:47, ссылка)
- у меня просто показывает ZIP в виде папки со значком, а вот как в
Вин10 - General(02.10.2020 16:44, ссылка)
- SFX архив - запустил и он сам распаковался. - Dead_morose(02.10.2020 15:55)
- Какие ужасти! Вот тут чего только нет, включая консольные версии и
исходники... Сам пользую 7za.exe в своих delphi утилитках. Народ
"на том конце" ни разу не жаловался... Приложил... Гyдвин(3 знак., 02.10.2020 15:48, ссылка, ссылка)
- >>> - SciFi(02.10.2020 15:41, ссылка, ссылка)
- tar - lloyd(01.10.2020 22:01)
- Найдите подвох в таком коде на Си: il-2(181 знак., 03.10.2020 12:34, dao, полностью)
- Пытаюсь начать отлаживать кусочки программы для м/к на ПК, с
симуляцией. Хочу добавить контроль выхода за границы буфера и ни
как не придумаю как это лучше сделать. Программа для м/к на С
(таков компилятор), программа на ПК на С++. Программа для ПК
состоит из файлов для м/к, без изменений, плюс что-то еще. Пока
получается так: AlexBi(477 знак., 30.09.2020 12:13, dao, полностью)
- а этот фокус можно и на контроллере исполнить. Nikolay801_(136 знак., 01.10.2020 10:10, картинка)
- Статический анализ показывает все спорные места. А потом ручками. - VLLV(30.09.2020 23:44)
- Учитывая поступившие предложения получается, что сам буфер можно
оставить типа int, а указатель сделать отдельным типом CPtr. В
версии для м/к это будет typedef in t*CPtr; Для этого типа надо
будет написать: AlexBi(534 знак., 30.09.2020 16:22)
- За границы буфера? Address Sanitizer (встроен прямо в Clang или
GCC!), Valgrind (плохо или не работает для статически
распределённой памяти). Если C++, то можно сделать смарт-указатель,
у которого переопределены (только на ПК) operator* и operator[]
так, что имею проверку диапазона... Разумеется внутри он должен
хранить не только указатель, но и начало/конец диапазона.
Рекомендую начать с Address Sanitizer. Кстати он проигрывает
Valgrind'у в одном: последний умеет fk0(204 знак., 30.09.2020 12:47)
- У меня MS, от которого отказаться довольно сложно, поэтому Address
Sanitizer не знаю как применить. Присматриваюсь к самодельному
смарт-указателю (написал выше). - AlexBi(30.09.2020 16:22)
- Для M$ есть во-первых Dr. Memory. Но он как и Valgrind не будет
работать со статически распределённой памятью. Поэтому от
статического распределения лучше вообще отказаться. Если malloc
якобы не нужен и опасен -- то можно распределить всю память в
момент старта программы, а потом не трогать. Но во всяком случае
для динамической памяти тот же Dr. Memory успешно начинает
работать. - fk0(02.10.2020 10:50, ссылка)
- Надо не "границы массивов" проверять, а сразу писать код так, чтоб
минимизировать вероятность ошибки. В частности, отказаться по
возможности от сырых указателей, и указателей вообще. Например,
позаимствовать span из C++20. Для строк -- string_view из C++17. Во
всех случаях подразумевается некий класс, который оперирует
последовательностью доступной через пару итераторов, но не владеет
им. Владеет им кто-то другой. fk0(133 знак., 02.10.2020 09:52)
- Так в студии есть аналогичная опция. - Kabdim(30.09.2020 17:51, ссылка)
- в лабвиндовс когда отлаживаешь в debug режиме, он сам молча
добавляет код проверки индексов массива. ашчушчэние, что пишешь на
шарпе, а не на сях. - Mahagam(30.09.2020 12:35)
- Вот так? >>> - SciFi(30.09.2020 12:22, ссылка)
- Сори за тупой вопрос, но я просто не могу не спросить. Вот есть
буфер char tmpFlashData [32];. Ничего страшного если я буду читать
из него но по выходящему за пределы индексу: caxapa = tmpFlashData
[64]; - Tpoeшник(01.10.2020 09:50, dao, полностью)
- смотги и учись у стагого евгея: Mahagam(399 знак., 01.10.2020 11:02)
- Можешь где то (?) включить генерацию map файла и посмотреть где и
по каким адресам оно у тебя лежит и куда в реальности попадает,
когда мимо тыкаешь. - Nikolay801_(01.10.2020 10:55)
- От процессора зависит, авркам пофиг, на кортексах можно в ексепшен
бас фаулт свалиться, если tmpFlashData где то с края памяти лежит
или индекс много много больше, [64] явно за пределы памяти не
вылезет. - Nikolay801_(01.10.2020 10:40)
- А вот если ты туда будешь писать... Будет намного веселей. - Nikolay801_(01.10.2020 10:38)
- В общем случае очень страшно. Undefined behavior же. Даже если в
конкретном случае известно, что там есть память, из которой можно
читать, компилятор, видя такое, может решить, что погромист ку-ку,
и нагенерить странный код. И формально будет прав, ибо undefined
behavior. SciFi(262 знак., 01.10.2020 10:20)
- Ну если индекс известен на стадии компиляции то такое завернет
компилятор, а если в рантайме то будут невалидные данные (хорошо
если адрес валидный ещё будет) - OlegPowerC(01.10.2020 09:58)
- Как посмотреть на какой скорости подцепилось USB устройство под
Windows 7 ? BlackMorda(619 знак., 01.10.2020 12:32, dao, полностью)
- Кто-то успел слить сорцы Хрюши.... backa(5 знак., 25.09.2020 14:44, dao, ссылка, полностью)
- А в Иаре7 можно сделать шаблоны файлов. Чтобы одно название ввел, а
тебе сразу и хидер и сишник со всеми #ifdefами оформил. - IBAH(26.09.2020 21:42, dao, полностью)
- Ни кто не делал стенды для контроля трансформаторов, используемых в
обратноходовых преобразователях? Как его лучше сделать? AlexBi(654 знак., 25.09.2020 11:15, dao, полностью)
- пришло в рассылке от PCBsoft. Интересно Adept(479 знак., 24.09.2020 14:57 - 16:03, dao, ссылка, ссылка, полностью)
- Подскажите, как убрать "Warning[Pa039]: use of address of unaligned
structure member D:\Work\Config.c 257 ", чета не понимаю. VLLV(258 знак., 24.09.2020 17:22, dao, полностью)