Функции поиска по строке, токенизация, обработка кодов ошибок + спецфункции из Part 5.
| Функция | Прототип |
|---|---|
s21_strchr |
char *s21_strchr(const char *str, int c) |
s21_strrchr |
char *s21_strrchr(const char *str, int c) |
s21_strpbrk |
char *s21_strpbrk(const char *str1, const char *str2) |
s21_strstr |
char *s21_strstr(const char *haystack, const char *needle) |
s21_strncmp |
int s21_strncmp(const char *str1, const char *str2, s21_size_t n) |
s21_strcspn |
s21_size_t s21_strcspn(const char *str1, const char *str2) |
s21_strtok |
char *s21_strtok(char *str, const char *delim) |
s21_strerror(int errnum) — собственные массивы сообщений для mac и linux#ifdef __APPLE__ / #elif defined(__linux__) (или аналог)sys_nerr / sys_errlist — только свои массивы| Функция | Описание |
|---|---|
s21_to_upper |
Копия строки в верхнем регистре, NULL при ошибке |
s21_to_lower |
Копия строки в нижнем регистре, NULL при ошибке |
s21_insert |
Вставить строку str в src по индексу start_index, новая строка |
s21_trim |
Убрать ведущие и хвостовые вхождения символов из trim_chars |
Для Part 5 — память выделяется на куче, возвращает void *, вызывающая сторона освобождает.
По каждой функции — описание реализации, краевые случаи, тесты.
...
...
...
...
...
...
...
...