Библиотека C/C++ разработчика | cpp, boost, qt
20.3K subscribers
1.78K photos
47 videos
16 files
3.97K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
加入频道
💥🧙‍♀️ Новые проклятия: руководство по ncurses

Ncurses («new curses») — библиотека, написанная на языках Си и Ада, предназначенная для управления вводом-выводом на терминал, в числе прочего, библиотека позволяет задавать экранные координаты (в знакоместах) и цвет выводимых символов. Предоставляет программисту уровень абстракции, позволяющий не беспокоиться об аппаратных различиях терминалов и писать переносимый код.

Изначально была библиотека под названием curses (название произошло от сокращения «cursor optimization»). Эта библиотека работала напрямую с терминалом, используя API системы, и при этом позволяла разработчикам не заботиться о различных типах терминалов. Библиотека давала возможность приложению перемещать курсор, создавать окна (не GUI), управлять цветом, управлять мышью и т.д. без использования зависящих от системы управляющих символов.

ncurses — это клон оригинальной curses из System V Release 4.0 (SVr4), которая в свою очередь была улучшением классического curses из BSD (название произошло от «new curses»)

Читать статью

#почитать
👍10
🚀🕛 Сортировка конфигов для Make сборок

Как известно любая большая программа на Си содержит много программных компонентов и, как следствие, много настроек: констант, макросов, конфигурационных структур и прочего. Всё это можно назвать одним словом: конфиги.

Все передают конфиги по-разному. Это один из религиозных аспектов в программировании микроконтроллеров.

1--Junior разработчики прописывают константы в каждом файле проекта или пихают всё в config.h, который потом вручную подключают #include(ом) во все *.с файлы,

2--Middle программисты передают конфиги через переменные окружения, которые определяют в скриптах сборки (Make, Cmake и т.п.).

3--Senior(ы) вообще передают конфиги через Device Tree и механизм Kconfig.

В статье не будут рассуждать как лучше и правильнее передавать конфиги в сборки. Разговор будет о том, как поступать, когда конфиги прописаны как переменные окружения в отдельном make файле по имени config.mk.

Читать статью

#почитать
👍8🥰31🤔1
🤔🤷‍♂️ Как и зачем мы парсим XML

Большинство разработчиков рано или поздно сталкиваются с XML. Этот язык разметки настолько глубоко вошел в нашу жизнь, что сложно представить систему, в которой не используется он сам или его подмножества. Разбор XML — достаточно типовая задача, но даже в ней можно выделить несколько основных подходов. В этой статье автор расскажет, зачем ему потребовалось парсить XML, какие подходы он опробовал, а заодно продемонстрирует замеры производительности для самых популярных реализаций на C++.

Читать статью

#почитать
👍7🥰2
🔟🏢 ТОП-10 российских IT-работодателей

Рейтинг работодателей, которые могут конкурировать по условиям труда с лидерами рынка.

Читать статью

#почитать
👍4🤔2🔥1😁1
🧨⚠️ ТОП-10 ошибок в C и С++ проектах в 2023 году

Не просто статья о том, как где-то в коде допустили ошибку, а целое волшебство кодинга. 10 масштабных и зрелищных разборов ошибок.

Читать статью

#почитать
👍3🔥1
Квиз со звёздочкой для С++ программистов

Если устали от рутинных задач и хотите поразмять мозг чем-то интересным, welcome.

Несколько тестов для избавления от утренней скуки найдет здесь

#почитать
🔥11🥱42
🤔 Так сколько на самом деле строк на C нужно, чтобы выполнить a + b в Python?

Автор решил, что будет сравнивать разницу не в интерактивном режиме, а при чтении из файла. Потому, что в это случае, можно избавиться от лишних процедур ввода вывода для интерактивного режима. Соответственно Python будет исполнять файл. И вот будет сравниваться разница между выполнением пустого файла и файла, где сложение надо будет произвести. Что для этого нужно:

🔹 узнать сколько строк Python нужно вообще, чтобы исполнить пустой файл и выйти без ошибок
🔹 узнать сколько строк Python нужно, чтобы исполнить файл где надо сложить два числа не сохраняя никуда результат
🔹 узнать сколько строк Python нужно вообще, чтобы исполнить файл где идет сложение двух переменных содержащих числа

Читать статью

#почитать
👍111
🤓🧑‍🍳 Интересные бенчмарки для многопоточности, асинхронности и корутинов C++20

Это набор производительных «words counters» (не навороченных, просто разделяющих «слова» пробелами), реализованных с использованием современных функций C++20, таких как span, string_view, filesystem, ranges и других.

Там, где это уместно, используются параллельные хэш-карты и другие зависимости, такие как контейнеры Abseil, Boost.Feature или Asio с корутинами.

#почитать
🔥16👍52👏1
🔍💼 Исследование рынка: 8 наиболее востребованных языков программирования в 2024 году

Результаты исследования рынка IT-вакансий, проведенного DevJobsScanner. Были проанализированы 14 миллионов объявлений и выявлены 8 наиболее востребованных языков программирования.

Читать статью

#почитать
👍5
💻🔍💼 Кризис IT-рынка: как джуны и кадровый голод меняют правила игры

В условиях нехватки опытных специалистов и наплыва джунов, IT-компании вынуждены искать нестандартные подходы к найму. Рассмотрим основные тренды и стратегии адаптации рынка.

Читать статью

#почитать
😁6