Spec-Zone.ru › C++

Заголовок стандартной библиотеки <cstring>

Изначально этот заголовок входил в стандартную библиотеку C как <string.h>.

Этот заголовок предназначен для байтовых строк в стиле C с нулевым символом в конце.

Макросы

NULL
определяемая реализацией константа нулевого указателя
(макроконстанта)

Типы

size_t
беззнаковый целочисленный тип, возвращаемый оператором sizeof
(псевдоним типа)

Функции

Манипуляции со строками
strcpy
копирует одну строку в другую
(функция)
strncpy
копирует указанное количество символов из одной строки в другую
(функция)
strcat
объединяет две строки
(функция)
strncat
объединяет указанное количество символов двух строк
(функция)
strxfrm
преобразует строку так, чтобы strcmp давала тот же результат, что и strcoll
(функция)
strdup
(C++26)
выделяет память для копии строки
(функция)
strndup
(C++26)
выделяет память для копии строки заданного размера
(функция)
Исследование строк
strlen
возвращает длину заданной строки
(функция)
strcmp
сравнивает две строки
(функция)
strncmp
сравнивает заданное количество символов двух строк
(функция)
strcoll
сравнивает две строки согласно текущей локали
(функция)
strchr
находит первое вхождение символа
(функция)
strrchr
находит последнее вхождение символа
(функция)
strspn
возвращает длину максимального начального сегмента, состоящего
только из символов, присутствующих в другой байтовой строке
(функция)
strcspn
возвращает длину максимального начального сегмента, состоящего
только из символов, отсутствующих в другой байтовой строке
(функция)
strpbrk
находит первое вхождение любого символа из набора разделителей
(функция)
strstr
находит первое вхождение подстроки
(функция)
strtok
находит следующий токен в байтовой строке
(функция)
Манипуляции с массивами символов
memchr
ищет первое вхождение символа в массиве
(функция)
memcmp
сравнивает два буфера
(функция)
memsetmemset_explicit
(C++26)
заполняет буфер символом
(функция)
memcpy
копирует один буфер в другой
(функция)
memmove
перемещает один буфер в другой
(функция)
memccpy
(C++26)
копирует один буфер в другой, останавливаясь после указанного разделителя
(функция)
Разное
strerror
возвращает текстовое описание заданного кода ошибки
(функция)

Примечания

  • NULL также определён в следующих заголовках:
    • <clocale>
    • <ctime>
    • <cstddef>
    • <cstdio>
    • <cwchar>
  • std::size_t также определён в следующих заголовках:
    • <ctime>
    • <cstddef>
    • <cstdio>
    • <cuchar> (начиная с C++17)
    • <cwchar>

Обзор

#define __STDC_VERSION_STRING_H__ 202311L

namespace std {
  using size_t = /* implementation-defined */;              // freestanding

  void* memcpy(void* s1, const void* s2, size_t n);         // freestanding
  void* memccpy(void* s1, const void* s2, int c, size_t n); // freestanding
  void* memmove(void* s1, const void* s2, size_t n);        // freestanding
  char* strcpy(char* s1, const char* s2);                   // freestanding
  char* strncpy(char* s1, const char* s2, size_t n);        // freestanding
  char* strdup(const char* s);
  char* strndup(const char* s, size_t size);
  char* strcat(char* s1, const char* s2);                   // freestanding
  char* strncat(char* s1, const char* s2, size_t n);        // freestanding
  int memcmp(const void* s1, const void* s2, size_t n);     // freestanding
  int strcmp(const char* s1, const char* s2);               // freestanding
  int strcoll(const char* s1, const char* s2);
  int strncmp(const char* s1, const char* s2, size_t n);    // freestanding
  size_t strxfrm(char* s1, const char* s2, size_t n);
  const void* memchr(const void* s, int c, size_t n);       // freestanding
  void* memchr(void* s, int c, size_t n);                   // freestanding
  const char* strchr(const char* s, int c);                 // freestanding
  char* strchr(char* s, int c);                             // freestanding
  size_t strcspn(const char* s1, const char* s2);           // freestanding
  const char* strpbrk(const char* s1, const char* s2);      // freestanding
  char* strpbrk(char* s1, const char* s2);                  // freestanding
  const char* strrchr(const char* s, int c);                // freestanding
  char* strrchr(char* s, int c);                            // freestanding
  size_t strspn(const char* s1, const char* s2);            // freestanding
  const char* strstr(const char* s1, const char* s2);       // freestanding
  char* strstr(char* s1, const char* s2);                   // freestanding
  char* strtok(char* s1, const char* s2);
  void* memset(void* s, int c, size_t n);                   // freestanding
  void* memset_explicit(void* s, int c, size_t n);          // freestanding
  char* strerror(int errnum);
  size_t strlen(const char* s);                             // freestanding
}

#define NULL /* implementation-defined */                   // freestanding

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/header/cstring

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API