Заголовок стандартной библиотеки <string.h>
Этот заголовок предоставляет функции для работы с байтовыми строками с нулевым терминатором.
Макросы |
|
| константа нулевого указателя, определяемая реализацией (константа макроса) |
|
Типы |
|
беззнаковый целочисленный тип, возвращаемый оператором sizeof (определение типа) |
|
Функции |
|
Манипуляции со строками |
|
|
(C11) | копирует одну строку в другую (функция) |
|
(C11) | копирует заданное количество символов из одной строки в другую (функция) |
|
(C11) | объединяет две строки (функция) |
|
(C11) | объединяет заданное количество символов двух строк (функция) |
| преобразует строку так, чтобы strcmp возвращала тот же результат, что и strcoll (функция) |
|
|
(C23) | выделяет память для копии строки (функция) |
|
(C23) | выделяет память для копии строки заданного размера (функция) |
Анализ строк |
|
|
(C11) | возвращает длину заданной строки (функция) |
| сравнивает две строки (функция) |
|
| сравнивает заданное количество символов двух строк (функция) |
|
| сравнивает две строки согласно текущей локали (функция) |
|
| находит первое вхождение символа (функция) |
|
| находит последнее вхождение символа (функция) |
|
| возвращает длину максимального начального сегмента, состоящего только из символов, присутствующих в другой байтовой строке (функция) |
|
| возвращает длину максимального начального сегмента, состоящего только из символов, отсутствующих в другой байтовой строке (функция) |
|
| находит первое вхождение любого символа одной строки в другой строке (функция) |
|
| находит первое вхождение подстроки (функция) |
|
|
(C11) | находит следующий токен в байтовой строке (функция) |
Работа с массивами символов |
|
| ищет первое вхождение символа в массиве (функция) |
|
| сравнивает два буфера (функция) |
|
|
(C23)(C11) | заполняет буфер символом (функция) |
|
(C11) | копирует один буфер в другой (функция) |
|
(C11) | перемещает один буфер в другой (функция) |
|
(C23) | копирует один буфер в другой, останавливаясь после указанного разделителя (функция) |
Разное |
|
|
(C11)(C11) | возвращает текстовое описание заданного кода ошибки (функция) |
Обзор
#define __STDC_VERSION_STRING_H__ 202311L #define NULL /* see description */ typedef /* see description */ size_t; void* memcpy(void* restrict s1, const void* restrict s2, size_t n); void* memccpy(void* restrict s1, const void* restrict s2, int c, size_t n); void* memmove(void* s1, const void* s2, size_t n); char* strcpy(char* restrict s1, const char* restrict s2); char* strncpy(char* restrict s1, const char* restrict s2, size_t n); char* strdup(const char* s); char* strndup(const char* s, size_t n); char* strcat(char* restrict s1, const char* restrict s2); char* strncat(char* restrict s1, const char* restrict s2, size_t n); int memcmp(const void* s1, const void* s2, size_t n); int strcmp(const char* s1, const char* s2); int strcoll(const char* s1, const char* s2); int strncmp(const char* s1, const char* s2, size_t n); size_t strxfrm(char* restrict s1, const char* restrict s2, size_t n); /*QVoid*/* memchr(/*QVoid*/* s, int c, size_t n); /*QChar*/* strchr(/*QChar*/* s, int c); size_t strcspn(const char* s1, const char* s2); /*QChar*/* strpbrk(/*QChar*/* s1, const char* s2); /*QChar*/* strrchr(/*QChar*/* s, int c); size_t strspn(const char* s1, const char* s2); /*QChar*/* strstr(/*QChar*/* s1, const char* s2); char* strtok(char* restrict s1, const char* restrict s2); void* memset(void* s, int c, size_t n); void* memset_explicit(void* s, int c, size_t n); char* strerror(int errnum); size_t strlen(const char* s); size_t strnlen(const char* s, size_t n);
Только если реализация определяет __STDC_LIB_EXT1__ и, кроме того, пользовательский код определяет __STDC_WANT_LIB_EXT1__ до любого включения <string.h>:
#ifdef __STDC_WANT_LIB_EXT1__
tyepdef /* see description */ errno_t;
tyepdef /* see description */ rsize_t;
errno_t memcpy_s(void* restrict s1, rsize_t s1max, const void* restrict s2, rsize_t n);
errno_t memmove_s(void* s1, rsize_t s1max, const void* s2, rsize_t n);
errno_t strcpy_s(char* restrict s1, rsize_t s1max, const char* restrict s2);
errno_t strncpy_s(char* restrict s1, rsize_t s1max, const char* restrict s2, rsize_t n);
errno_t strcat_s(char* restrict s1, rsize_t s1max, const char* restrict s2);
errno_t strncat_s(char* restrict s1, rsize_t s1max, const char* restrict s2, rsize_t n);
char* strtok_s(char* restrict s1, rsize_t* restrict s1max,
const char* restrict s2, char** restrict ptr);
errno_t memset_s(void* s, rsize_t smax, int c, rsize_t n)
errno_t strerror_s(char* s, rsize_t maxsize, errno_t errnum);
size_t strerrorlen_s(errno_t errnum);
size_t strnlen_s(const char* s, size_t maxsize);
#endif
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/c/header/string