LwPRINTF это альтернативный, облегченный менеджер стандартного ввода/вывода (stdio), оптимизированный для встраиваемых систем [1], автор Tilen Majerle. Он включает в себя такие функции, как printf, vprintf, snprintf, sprintf и vsnprintf (см. документацию [2]).
Функциональные особенности LwPRINTF:
• Написан на C (C11), совместим с типами size_t и uintmax_t для некоторых спецификаторов печати. • Реализованы функции вывода, совместимые со стандартными функциями printf, vprintf, snprintf, sprintf и vsnprintf. • Низкие требования к расходу памяти, что хорошо подходит для микроконтроллеров. • Реэнтрантный доступ для всех API-функций. • Поддержка операционных систем. • Требует от пользователя определения одной функции вывода, чтобы на нужной аппаратуре работали API-вызовы printf-подобных функций. • Дополнительные функции для операционных систем, обеспечивающие защиту от одновременного вывода на печать из нескольких потоков. • Позволяет использовать функции для несколько потоков вывода (в отличие от стандартного printf, который поддерживает только один поток вывода), что удобно для разделения частей приложения. • В дополнение к стандартным спецификаторам печати определены дополнительные. • Дружественная MIT-лицензия [2].
Требования:
• C compiler (например gcc). • Несколько килобайт памяти программ.
Автор приветствует добавление исправлений найденных багов и дополнения к библиотеке. Для этого сделайте ветвление от текущего состояния репозитория [1], после чего сделайте pull request в ветку develop ваших добавлений и исправлений. Пожалуйста, придерживайтесь стиля программирования C, используемого в библиотеке LwPRINTF. Также вы можете просто сообщить о найденной ошибке в библиотеке, или запросить добавление новой функции.
[Ссылки]
1. Lightweight printf stdio manager. 2. LwPRINTF latest-develop documentation. |