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

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

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

Наши каналы: https://yangx.top/proglibrary/9197

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
加入频道
🤔 Так сколько на самом деле строк на C нужно, чтобы выполнить a + b в Python?

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

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

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

#почитать
🔍Насколько легко «войти в айти»?

Мы продолжаем собирать ваши истории о смене профессии и трудоустройстве в IT, чтобы написать большую аналитическую статью.

👉Если вы еще не рассказывали о своем опыте, пройдите короткий опрос по ссылке.
Please open Telegram to view this post
VIEW IN TELEGRAM
🥸👁️ Отслеживание изменений в директории с помощью Inotify

Автор материала столкнулся с задачей, где необходимо было отслеживать в ОС Linux изменение файла в директории на чистом С++. Так как чистый С++, Qt с его QFileSystemWatcher сразу отпадал, из-за того что необходимо было подключать QObject. В итоге выбор пал на линуксовую функцию Inotify.

Inotify позволяет через файловый дескриптор наблюдать за директорией или файлом, отслеживая их события. Все события ввода-вывода ссылаются на открытый файл с использованием файлового дескриптора. Файловый дескриптор представляет собой целое число типа int.

Работа типичной программы мониторинга организована следующим образом:

♦️ С помощью inotify_init() открывается файловый дескриптор
♦️ Добавляется одно или несколько событий для наблюдений
♦️ Ожидаем добавленное событие
♦️ Обрабатываются события, после чего снова начинаем ждать в бесконечном цикле
♦️ При отсутствии активных наблюдений или при получении определенного сигнала файловый дескриптор закрывается, выполняется очистка и программа завершает работу.

#туториал
🎄 До Нового года осталось меньше недели, поэтому мы подводим итоги

🧑‍🎄 За год наше комьюнити стало больше почти на 4000 человек

❤️ Особенно вам понравились вот эти посты:

Свежие и обновленные статьи
LMDeploy — это набор инструментов для сжатия, развертывания и обслуживания LLM
Перегрузка операторов
Позднее связывание
Дайджест статей и материалов

💜 А ещё вы с интересом читали эти статьи:

Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
ТОП-10 книг по языку программирования С++ в 2023 году
ТОП-9 не самых очевидных компаний для стажировки в ИТ

🧑‍💻 В 2023 году мы запустили несколько новых каналов:

Библиотека собеса по C/C++ | вопросы с собеседований
Библиотека задач по C/C++ | тесты, код, задания
Книги для C/C++ разработчиков

Кстати, в канале с книгами прямо сейчас проходит новогодний розыгрыш 👈

🎁 И последнее, но не менее важное: мы сделали скидку -35% на все курсы нашей академии proglib.academy
🤔 Очередной #дайджест по С++

Книга «C++ for Financial Mathematics» — Книга учит всему, что вам нужно знать для решения реальных финансовых задач

Игровая легенда из 90-х — как работала 3dfx Voodoo «под капотом»? Пишем 3D-приложение с нуля на Glide

Poco — набор open-sorce библиотек для создания кроссплатформенных сетевых и веб-приложений

Мои советы после 20 лет в программировании — краткий очерк профессионального пути

Анализ приложений на C++ для оптимизации производительности — введение в оптимизацию производительности приложений на C++ с помощью таких инструментов, как Intel VTune Profiler и Intel Advisor
Чему бы вы хотели научиться?
Пишите в комментариях
👨‍🎓 14 бесплатных ресурсов, которые пригодятся каждому разработчику

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

Читать статью
Алгоритм lower_bound

Возвращает итератор, указывающий на первую позицию в отсортированной последовательности, ограниченной диапазоном [first, last], в которую можно вставить значение value, не нарушая упорядоченности.
-35% на курс по алгоритмам

🎄 Новый год начинается с подарков, а хороший подарок для себя — новые знания со скидкой 35%!

🌟«Алгоритмы и структуры данных» — 23 390 ₽ (вместо 35 990 ₽)

Полугодовая программа от преподавателей МФТИ и НИУ ВШЭ, которая включает в себя все необходимые знания по алгоритмам для работы.

Самое ценное — это развернутая обратная связь по всем вашим домашним заданиям, а также ссылки на полезные дополнительные материалы.

У вас не будет шансов не усвоить какие-то темы курса👌

🔥 Переходите и активируйте вводные занятия курсаhttps://proglib.io/w/ff97c30a
🏦⚠️ Борьба с ошибками разработки ПО в финтехе

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

Читать статью
Задача

Найти среднее арифметическое в трех рядах.

Для начала продумаем наше решение. Сразу условимся что длинна ряда у нас будет 5 . Хотите ставьте своё число. Нам надо найти среднее арифметическое в трех рядах, и в каждом по отдельности, т.е. мы сначала сделаем цикл для рядов, а потом в этом цикле сделаем еще один цикл только уже для чисел этого ряда.

Теперь подумаем какие переменные нам понадобятся :

Переменная summa — для суммы чисел каждого ряда
Переменная average — для среднего арифметического каждого ряда
Переменная number — обычное число которое мы будем постоянно прибавлять
Переменные i и j — для циклов, перпенные у нас будут локальные, т.е. использоваться и объявляться и цикле.
Каков размер типа данных int для 32-разрядной системы?
Anonymous Quiz
2%
1
11%
2
75%
4
12%
8
🤔 Очередной #дайджест по С++

☀️ Как крысячить и выжить — крысы бегут первыми с ИТ-корабля

☀️ 4 миллиарда операторов if — идея проверки чётности числа при помощи одних сравнений

☀️ Книга «C and Python Applications» — встраивание кода Python в программы на C, методы SQL и сокеты Python

☀️ Паттерн проектирования «Наблюдатель» в C++ — основы шаблона проектирования Observer на C++ с теорией и реализацией

☀️ CspChan — чистая реализация каналов Go на C89, включая блокирующие и неблокирующие селекты
🤲✍️ Базовые алгоритмы на графах

Рассматриваются основные алгоритмы на графах и их реализацию на C++:

▪️Обход графа в ширину (Поиск в ширину) aka BFS | Breadth First Search
▪️Обход графа в глубину (Поиск в глубину) aka DFS | Depth First Search
▪️Алгоритм Дейкстры
▪️Алгоритм Флойда-Уоршелла
▪️Алгоритм Прима

Изучить вопрос

#туториал
Использование Boost

Если ваш проект открыт для поддержки библиотеки, рассмотрите возможность использования boost::algorithm::join алгоритм. Он объединяет все элементы в указанном списке в строку, где сегменты объединяются заданным разделителем.

Другие способы преобразования вектора в строку можно найти здесь.
🤖8️⃣ Mixtral 8x7B — новый ИИ

Это сет из 8 нейронок, которые работают вместе.
Благодаря этому снижаются галлюцинации, повышается точность работы.
Mixtral 8x7B — топовая из opensource, превышает по показателям Llama и не уступает GPT 3.5.
Мы подключаемся к Mixtral 8x7B через Llama CPP при помощи Google Colab.
При желании можно развернуть локально, или протестировать модель на сайте Hugging Face используя Hugging Chat.


Смотреть

#видео
💥🏃 Быстрый парсинг 8-битных целых чисел

В статье приводится разбор интересной задачи: вам нужно быстро распарсить 8-битные целые числа (0, 1, 2, …, 254, 255) из строки ASCII/UTF-8. Дана строка и её длина: например, ’22’ и длина 2.

Изучить решение

#гайд