Данный проект включает реализацию функций библиотеки string.h, а также частичную реализацию функции sprintf и дополнительные функции для обработки строк на языке C. Библиотека разработана в соответствии со стандартом C11 и ориентирована на работу с z-строками в кодировке ASCII.
- Код написан с соблюдением принципов структурного программирования и Google Style.
- Библиотека скомпилирована в статическую библиотеку с именем
s21_string.a, заголовочный файлs21_string.h. - Все функции покрыты unit-тестами с использованием библиотеки Check, тесты проверяют соответствие с реализацией стандартной библиотеки
string.h. - Отчет по покрытию генерируется в формате HTML.
- Реализована функция
sprintf, поддерживающая частичное форматирование:- Спецификаторы:
c,d,f,s,u,%. - Флаги:
-,+,(пробел). - Ширина: (число).
- Точность:
.(число). - Длина:
h,l.
- Спецификаторы:
- Реализованы дополнительные спецификаторы и флаги для
sprintf:- Спецификаторы:
g,G,e,E,x,X,o,p. - Флаги:
#,0. - Ширина:
*. - Точность:
.*. - Длина:
L.
- Спецификаторы:
- Реализована функция
sscanf, поддерживающая полное форматирование с учетом всех спецификаторов, флагов и модификаторов.
- Реализованы дополнительные функции обработки строк из класса String.
-
Клонируйте репозиторий проекта:
git clone https://github.com/KovikaSA/String.git
-
Перейдите в директорию проекта:
cd <путь к проекту>
-
Для сборки для сборки библиотеки используйте make:
make
Тесты для утилит можно запустить с помощью следующих команд:
make testЧтобы сгенерировать отчет по покрытию, выполните команду
make gcov_report