Рубрика «c++» - 5

Эххх... RDR 2... Проработанный сюжет, большой открытый мир, внимание к деталям — вот что гласили заголовки статей. И всё это умещается в 116 ГБ памяти. Всего лишь? Нет. Много. Ждать, блин, ещё несколько часов пока он загрузится. «Вот никуда это не годится!» — подумал я, и тут же мне пришла идея «утереть нос» этим студиям — создать игру не хуже, которая будет размером с игру для NES — 40 КБ! Это всё фантазии конечно, но вспомнить запылишийся C можно и даже нужно, времени еще полно. Ладно, долой вступление, берем C99, GCC 14.2.0 и вперед.

Начнем с основы основ: "Hello, world!". Создаем main.c:

Читать полностью »
Зажигаем миллиард цветов миллионом строк - 1

16K

Вот мы и добрались до финальной части, в которой я расскажу, как делал большой софт, который управляет большой подсветкойЧитать полностью »

Привет! Меня зовут Катя, я IT-рекрутер, нанимаю разработчиков в Авито уже 4й год. О сложном отношении к эйчарам я наслышана, поэтому сразу дисклеймер — это не классическая HR-статья о том, что у нас «классный офис, молодой коллектив и печеньки на кухне». Это честный рассказ о такой практике найма инженеров, как Weekend Offer (WO).

Читать полностью »

Метапрограммирование 2.0: макросы и генерация кода в современном мире - 1


Забудьте про скучные «Hello, World». Макросы и шаблоны давно стали полноценными инструментами архитектора кода: от хитрых C++-шаблонов до процедурных макросов Rust и Java-аннотаций, автоматически генерирующих целые фреймворки. 

В этой статье мы рассмотрим примеры, где metaprogramming избавляет от рутины и экономит часы работы над проектом. Детали как всегда под катом.Читать полностью »

Когда мы разрабатываем под embedded, нам приходится сталкиваться с такими флагами компиляции как -nostdlib -fno-exceptions -fno-rtti.

Во многих средах нет malloc/free (new/delete) и вообще нет встроенного выделения памяти.

Использование «больших» стандартных контейнеров C++ (например, std::vector) нередко исключено

В результате приходится решать задачу «ручного» управления памятью. Ниже рассмотрим два подхода:

  • Буфер + переопределение оператора new (placement new)

  • Собственная куча (Heap)

    Почему динамической аллокации часто нет

    1. Ограниченные ресурсы

      Читать полностью »

История начинается в далёком 2019 году, а может, и немного раньше. Уже два года я благополучно перестал работать на дядю, ибо понял, что много денег не заработаю, а здоровье гробится конкретно. А рабство — это не моё. Хотя для страны, откуда я родом, 2500$ в месяц, из которых 500$ уходило на аренду жилья и еду, — это неплохо. Остальное копи, откладывай, трать по желанию. Не бедствовал.

Читать полностью »

Всем доброго дня! Мой никнейм Arduinum628, я занимаюсь DIY проектами и программированием на Python и C++. В этой статье пойдёт речь о выводе системной информации с ПК на круглый LCD дисплей GC9A01.

Сама идея проекта мне пришла во время разговора с другом Иваном. Я рассказал ему, что заказал пару LCD дисплей GC9A01 с Ali Express для своих будущих DIY проектов. Во время разговора Иван внезапно сказал, что ему-бы пригодился девайс для вывода системной информации с ПК. Я подумал - почему-бы не научиться использовать этот дисплей на подобном проекте?!

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js