Программач, мне давно не даёт покоя один вопрос - как люди вообще пишут софт на низкоуровневых языках? Предположим я запилю свой текстовый редактор с блекджеком и шлюхами на плюсах. И, разумеется, он будет уметь работать с вкладками. И тут возникает вопрос - а какого размера массив выделять под вкладки? 10? Мало. 100? Да, должно быть достаточно. А что если кто-то ебанется, и откроет 101 вкладку? То всё распидорасит. Да, я знаю про векторы. Но в чем смысл пердолиться с низкоуровневыми языками, если для любой хуйни используются тяжелые(в разы, относительно обычного массива) структуры. А без них программа превращается в минное поле. В чем тогда суть этого плюсодрочерства?
>>160876310 (OP) Процы для блоков управления машин, квадрокоптеров, беспилотников, стиралок, холодильников чаще всего даже компиляторов ни на что кроме крестов и си не имеют. Обычной памяти таких процов в метр-два просто не хватит даже чтобы хранить всю утф8. Запуск там чего-то сложнее простенькой ртос просто невозможен. Твой пример вообще простой, такие вещи всегда оговорены и предусмотрена защита от ошибок.
>>160876310 (OP) блять, ну ты и пидор. Динамические массивы есть почти по всех языках. Например в плюс можно воспользоваться std::vector. Который растет на корень двойки раз, если следующий элемент не убирается в этот.
Или деки, которые выделяются не одним куском памяти. Короче, червь, или учи программирование или съебывай.
>>160876775 Пост не читай @ сразу отвечай. >Да, я знаю про векторы. Но в чем смысл пердолиться с низкоуровневыми языками, если для любой хуйни используются тяжелые(в разы, относительно обычного массива) структуры
>>160876310 (OP) >как люди вообще пишут софт на низкоуровневых языках С очевидными сложностями и ёблей.
>В чем тогда суть этого плюсодрочерства В возможности обрабатывать это аппаратурой, собраной их найденных на улице кремниемых булыжников и пары лампочек, вывернутых в подъезде.
>>160877078 Узнай сколько у тебя оперативы и посчитай сколько он сможет тянуть вкладок в худшем случае и огранич их количество. А вообще используй патерны типа proxy и вообще неиспользуемую часть выгружай в ROM.
>>160876310 (OP) Есди бы не не низкоуровые чщыки, то не было бы таблетомов к твоим любимвм прогам и игорям. Мимо пишу код для ардуино на асме. Писал код на военке - на асме. Ревершу чужой код и преобразую чужие баттхерты на работе в кофе, тому шо коые преобразуется через меня в код не на асме
>>160877203 Почему? Есть процы со встроенным модулем усб, часто с поддержкой стоковой клавиатуры. Включаешь модуль, даешь ему тактировку, пишешь куда выдавать, явно на си\крестах и вот тебе текстовый редактор, правда задача не очень часто встречается. Чаще всего больше чем ввод пары тройки чисел ничего не нужно.
>>160877351 модуль есть конечно, но общаться с ним нужно на машинном языке (то есть банальными обращениями к регистрам, положить в регистр такой то байт такой то что бы из usb вывести пакет данных такой то...) и для этого опять таки нужен язык ассемблера или компилятор си-шного кода написанный на языке ассемблера
>>160877622 Ну так и есть, в одной руке даташит, в другой примеры которые написал производитель, в третьей калюкулятор для адреса регистров, в четвертой клавиатура, в пятой проц, в шестой осциллограф. Шива-программист.
>>160877766 > >Ну так и есть, в одной руке даташит, в другой примеры которые написал производитель, в третьей калюкулятор для адреса регистров, в четвертой клавиатура, в пятой проц, в шестой осциллограф. Шива-программист двоичную и 16-ричную арифметику надо в уме считать, хотя бы частично. Осциллограф вряд-ли (редко), скорее логический анализатор. Аппноуты надо почитать конечно ну и даташит естессно...
>>160878310 нек в850(уже ренесас), ренесас рх850, техас тм4ц129, нхп с32к(бывшая моторола). Много с какими, это основные. Было что-то писал на атмел такой как в ардуино дуо или как-то так, на кортекс сам3х ядре.
>>160876844 убейся червь. Вектор нихуя не тяжелый. Уж точно не в разы. Скорость работы такая же как у массива. Объем равен объему массива + 8 байт (ну или 16, если ты извращенец)
>>160878451 > >нек в850(уже ренесас), ренесас рх850, техас тм4ц129, нхп с32к(бывшая моторола). Много с какими, это основные. Было что-то писал на атмел такой как в ардуино дуо или как-то так, на кортекс сам3х ядре. и где все это "счастье" ставится? наверняка автомобильная электроника? Я занимался только PIC STM32 AVR на уровне хобби и единичных проектов типа балансировки колес, регуляторов оборотов и частотников, УЗЧ с цифровым управлением и всякой чепухи
>>160879576 Автопроизводители очень медленно реагируют на новые технологии и возможности, ренесас самый крупный поставщик всего для автомобильной электроники, чаще всего не заказывая сотни тысяч экземпляров и не подписав нда - тебе не дадут документации, следовательно тем кто захочет что-то хакнуть в машине - будет тяжело. В чипах на ключах часто стоят инфенионы такие как в кредитках, там уровень безопасности тоже высок. В итоге получается что производители покупают это потому что мало дыр, много платформ поддержки их внутренних для отказоустойчивости, по сравнению с которыми стандарты мисра - лажа дырявая. Они не хотят чтобы кто-то выудил прошивку. Часто еще стандарты связи и нужные модули, не так легко найти такой развитый и крутой как кан модуль встроенный в ренесас рх850, а вот свистелки вроде контроллера лцд для автомобильных блоков нужны не так часто как кан. У япошек, например есть универы для прогеров на автомобильную электронику и они привыкли к своим некам(ренесасам), на них уже и наработок много и опыта. Мерседес вообще много куда ПЛИСы ставит альтеровские, жесткая хрень. В итоге они варятся в своем закрытом мирке с нужными им модулями и интерфейсами с малым количеством дырок.
>>160879991 > >Автопроизводители очень медленно реагируют на новые технологии и возможности, ренесас самый крупный поставщик всего для автомобильной электроники, чаще всего не заказывая сотни тысяч экземпляров и не подписав нда - тебе не дадут документации, следовательно тем кто захочет что-то хакнуть в машине - будет тяжело. В чипах на ключах часто стоят инфенионы такие как в кредитках, там уровень безопасности тоже высок. В итоге получается что производители покупают это потому что мало дыр, много платформ поддержки их внутренних для отказоустойчивости, по сравнению с которыми стандарты мисра - лажа дырявая. Они не хотят чтобы кто-то выудил прошивку. Часто еще стандарты связи и нужные модули, не так легко найти такой развитый и крутой как кан модуль встроенный в ренесас рх850, а вот свистелки вроде контроллера лцд для автомобильных блоков нужны не так часто как кан. У япошек, например есть универы для прогеров на автомобильную электронику и они привыкли к своим некам(ренесасам), на них уже и наработок много и опыта. Мерседес вообще много куда ПЛИСы ставит альтеровские, жесткая хрень. В итоге они варятся в своем закрытом мирке с нужными им модулями и интерфейсами с малым количеством дырок тем не менее кодграбберы и всякие разлочки для бортовых пк регулярно появляются на рынке
>>160880192 Исходя из их цены, понятно что на их разработку потрачено достаточно много времени и специалистов которым пришлось неплохо заплатить, иначе уже было бы как с обманками на принтерные картриджи, которые стоят копейки и клепаются любым дядюшкой ляо из китая.
>>160876310 (OP) Под конкретную задачу практически всегда можно написать свои структуры, которые будет легче и быстрее. Если тебе не нужен весь функционал вектора, то можно запилить свой, без лишних шлюх, с тем же realloc'ом. На какой-нибудь высокоуровневой джаве и близко ничего такого не сделать, там вообще хуй знает как что выделяется и освобождается.
>>160884755 Его от кофе колбасит, у меня тоже такое пару раз было, кроме того что руки трясутся еще в груди немного щемит и ощущение опасности и тоски долбит.
Предположим я запилю свой текстовый редактор с блекджеком и шлюхами на плюсах. И, разумеется, он будет уметь работать с вкладками.
И тут возникает вопрос - а какого размера массив выделять под вкладки? 10? Мало. 100? Да, должно быть достаточно. А что если кто-то ебанется, и откроет 101 вкладку? То всё распидорасит. Да, я знаю про векторы. Но в чем смысл пердолиться с низкоуровневыми языками, если для любой хуйни используются тяжелые(в разы, относительно обычного массива) структуры. А без них программа превращается в минное поле. В чем тогда суть этого плюсодрочерства?