Имя | Примечания |
void *memcpy(void *dest, const void *src, size_t n); |
копирует n байт из области памяти src в dest, которые не должны пересекаться, в противном случае результат не определён (возможно как правильное копирование, так и нет) |
void *memmove(void *dest, const void *src, size_t n); |
копирует n байт из области памяти src в dest, которые в отличие от memcpy могут перекрываться |
void *memchr(const char *s, char c, size_t n); |
возвращает указатель на первое вхождение значения c среди первых n байтов s или NULL, если не найдено |
int memcmp(const char *s1, const char *s2, size_t n); |
сравнивает первые n символов в областях памяти |
void *memset(char *dest, char value, size_t size); |
заполняет область памяти одним байтом value |
char *strcat(char *dest, const char *src); |
дописывает строку src в конец dest |
char *strncat(char *dest, const char *src, size_t n); |
дописывает не более n начальных символов строки src (или всю src, если её длина меньше) в конец dest |
char *strchr(const char *s, int c); |
возвращает адрес символа c в строке s, начиная с головы, или NULL, если строка s не содержит символ c |
char *strrchr(const char *s, int c); |
возвращает адрес символа c в строке s, начиная с хвоста, или NULL, если строка s не содержит символ c |
int strcmp(const char *s1, const char *s2); |
лексикографическое сравнение строк (возвращает "0", если строки одинаковые, положительное, если первая строка больше, и отрицательное, если меньше) |
int strncmp(const char *s1, const char *s2, size_t n); |
лексикографическое сравнение первых n байтов строк |
int strcoll(const char *s1, const char *s2); |
лексикографическое сравнение строк с учетом локали collating order |
char *strcpy(char *toHere, const char *fromHere); |
копирует строку из одного места в другое |
char *strncpy(char *toHere, const char *fromHere, size_t n); |
копирует до n байт строки из одного места в другое |
char *strerror(int); |
возвращает строковое представление сообщения об ошибке errno (не потоко-безопасная) |
size_t strlen(const char *str); |
возвращает длину строки |
size_t strspn(const char *s, const char *accept); |
определяет максимальную длину начальной подстроки, состоящей исключительно из байтов, перечисленных в accept |
size_t strcspn(const char *s, const char *reject); |
определяет максимальную длину начальной подстроки, состоящей исключительно из байтов, не перечисленных в reject |
char *strpbrk(const char *s, const char *accept); |
находит первое вхождение любого символа, перечисленного в accept |
char *strstr(const char *haystack, const char *needle); |
находит первое вхождение строки needle в haystack |
char *strtok(char *dest, const char *src); |
преобразует строку в последовательность токенов. Не потоко-безопасная, не реентерабельная. |
size_t strxfrm(char *dest, const char *src, size_t n); |
создает оттранслированную копию строки, такую, что дословное сравнение её (strcmp) будет эквивалентно сравнению с коллатором. |