Ответ 1
Возможно, вы захотите проверить http://nothings.org для отдельных проектов (умеренно размер), которые включают (изображение) декомпрессию, растрирование шрифтов и другие полезные вещи.
Чем дольше я работаю разработчиком C, тем мне не хватает некоторых источников кусков кода среднего размера.
У меня есть исходный код фрагментов кода и библиотек, но я не могу найти хороший источник кода, размер которого находится между ними. Что-то, что является заголовком, или файл с заголовком + реализацией, но не является библиотекой, но включен в проект.
Материал, похожий на динамический массив или связанный список или некоторые помощники для отладки или ведения журнала.
Я знаю, что это частично связано с умением C-разработчиков DIY, но я просто не считаю, что люди не делятся такими вещами.
Возможно, вы захотите проверить http://nothings.org для отдельных проектов (умеренно размер), которые включают (изображение) декомпрессию, растрирование шрифтов и другие полезные вещи.
Вы также можете посмотреть CCAN.
http://www.koders.com/ стоит проверить. Иногда вы можете найти что-то полезное.
Вы также можете сортировать результаты по лицензии, которая является довольно удобной функцией.
Есть несколько полезных библиотек, которые spring умят быстро; glib предоставляет множество полезных полезных утилит, в том числе:
двукратно и односвязные списки, хэш-таблицы, динамические строки и строковые утилиты, такие как лексический сканер, строковые фрагменты (группы строк), динамические массивы, сбалансированные двоичные деревья, N-арные деревья
(И да, glib полезен даже в неграфических средах, не позволяйте своему GNOME-фону вас обманывать.:)
Apache portable runtime - это библиотека, которая помогает абстрагировать знания, специфичные для платформы; Я видел, как несколько программ используют его. Похоже, что достаточно программистов довольны тем, что "Он работает на Linux", чтобы не беспокоиться о различиях в платформе и не узнавать об этом еще одну библиотеку. Он больше похож на инструментарий системного уровня:
Функции распределения памяти и пула памяти, Атомные операции, Обработка динамических библиотек, Файловый ввод-вывод, Разбор аргументов команды, Блокировка, Хэш-таблицы и массивы, Функциональность Mmap, Сетевые сокеты и протоколы, Функциональность Thread, process и mutex, Общая память функциональность, временные процедуры, службы идентификатора пользователя и группы.
Я всегда смотрю на исходный код Python (C), когда я ищу "лучший" способ скомпоновать что-то в стиле C. Guido van Rossum C, краткий и понятный код, учитывая числовые функции и функции, поддерживаемые в стандартных библиотеках python почти всегда есть полезный/улокальный фрагмент кода.