Отладка C при помощи пакета Cosmopolitan Libc
Cosmopolitan Libc предоставляет набор отладочных возможностей, повышающих удобство разработки на C: трассировка вызовов функций, интеграция с gdb, среда выполнения ASAN/UBSAN и многое другое! На C написано много быстрого и критически важного кода. Если вы пользуетесь программами, написанными на C, если вам приходится предусматривать интерфейсы для работы с библиотеками на C, исправлять баги в коде на C, либо даже переписывать имеющуюся на С программу на каком-то другом языке, то именно этот инструмент помогает понять, что делается в вашем коде на C. Отладка – это не просто россыпь инструкций printf. В этом посте будет рассмотрено, как Cosmopolitan Libc помогает наверняка и как следует отлаживать код C. Все примеры находятся в этом репозитории.
https://ahgamut.github.io/2022/10/23/debugging-c-with-cosmo/
#cpp #programming
👉 @cpp_lib
Cosmopolitan Libc предоставляет набор отладочных возможностей, повышающих удобство разработки на C: трассировка вызовов функций, интеграция с gdb, среда выполнения ASAN/UBSAN и многое другое! На C написано много быстрого и критически важного кода. Если вы пользуетесь программами, написанными на C, если вам приходится предусматривать интерфейсы для работы с библиотеками на C, исправлять баги в коде на C, либо даже переписывать имеющуюся на С программу на каком-то другом языке, то именно этот инструмент помогает понять, что делается в вашем коде на C. Отладка – это не просто россыпь инструкций printf. В этом посте будет рассмотрено, как Cosmopolitan Libc помогает наверняка и как следует отлаживать код C. Все примеры находятся в этом репозитории.
https://ahgamut.github.io/2022/10/23/debugging-c-with-cosmo/
#cpp #programming
👉 @cpp_lib
👍3⚡2
Авторы: Marc Gregoire, Peter Van Weert (2016)
Стандартная библиотека шаблонов является жемчужиной языка программирования С++ и содержит основные алгоритмы, структуры данных и функции, необходимые для повседневной работы. Обычно она изучается в конце любого руководства по С++, однако этот справочник направлен исключительно на изучение STL, рассматривая основные темы, такие как контейнеры, лямбда-выражения, указатели и функции по работе с многопоточностью.
В книге рассматриваются следующие темы:
✔️ математические функции;
✔️ контейнеры;
✔️ алгоритмы;
✔️ потоки ввода/вывода;
✔️ строки;
✔️ многопоточность.
#cpp #programming
👉 @cpp_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3⚡2
Автоматическая Генерация Конфигураций для Make Сборок
При разработке программного обеспечения (особенно для микроконтроллеров) рано или поздно придется столкнуться с тем, что надо как-то передавать конфигурации для данного программного проекта.
В своем опыте я пришел к выводу, что с точки зрения масштабирования кодовой базы, конфиги проще всего передавать через переменные окружения. Да.. Плюс в том, что переменные окружения можно определять прописывая прямо в скриптах (Make, CMake и т.п.).
Выглядит это так. У каждой сборки есть файл config.mk в котором перечислены программные компоненты из которых должна собираться эта конкретная сборка. Содержимое этого файла обычно выглядит так.
https://habr.com/ru/articles/798213/
#cpp #programming
👉 @cpp_lib
При разработке программного обеспечения (особенно для микроконтроллеров) рано или поздно придется столкнуться с тем, что надо как-то передавать конфигурации для данного программного проекта.
В своем опыте я пришел к выводу, что с точки зрения масштабирования кодовой базы, конфиги проще всего передавать через переменные окружения. Да.. Плюс в том, что переменные окружения можно определять прописывая прямо в скриптах (Make, CMake и т.п.).
Выглядит это так. У каждой сборки есть файл config.mk в котором перечислены программные компоненты из которых должна собираться эта конкретная сборка. Содержимое этого файла обычно выглядит так.
https://habr.com/ru/articles/798213/
#cpp #programming
👉 @cpp_lib
👍5
C++: Эмулятор NES с нуля
#1: Bitwise Basics & Overview
#2: The CPU (6502 Implementation)
#3: Buses, RAMs, ROMs & Mappers
#4: PPU - Background Rendering
#5: PPU - Foreground Rendering
#6: APU - Sounds, Beeps & Bloops
#7: More About Mappers
источник
#cpp #programming
👉 @cpp_lib
#1: Bitwise Basics & Overview
#2: The CPU (6502 Implementation)
#3: Buses, RAMs, ROMs & Mappers
#4: PPU - Background Rendering
#5: PPU - Foreground Rendering
#6: APU - Sounds, Beeps & Bloops
#7: More About Mappers
источник
#cpp #programming
👉 @cpp_lib
👍12⚡2🔥1
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Dangerous Dave
Серия видеороликов, показывающих начинающим программистам, как воссоздать Dangerous Dave с помощью C и SDL (2 часа)
источник
#cpp #programming
👉 @cpp_lib
Серия видеороликов, показывающих начинающим программистам, как воссоздать Dangerous Dave с помощью C и SDL (2 часа)
источник
#cpp #programming
👉 @cpp_lib
👍6⚡1🔥1