Документация по LinuxLinuxDoc.Ru 🔍

strdup, strndup, strdupa, strndupa - дублирует строку

НАЗВАНИЕ
strdup, strndup, strdupa, strndupa - дублирует строку

СИНТАКСИС
#include

char *strdup(const char *s);

#define _GNU_SOURCE
#include

char *strndup(const char *s, size_t n);
char *strdupa(const char *s);
char *strndupa(const char *s, size_t n);


ОПИСАНИЕ

Функция strdup() возвращает указатель на новую строку,
являющуюся дубликатом строки s. Память под новую строку
выделятся с помощью malloc(3) и может быть высвобождены с
помощью free(3).

Функция strndup() похожа на предыдущую, но копирует, как
максимум, n символов. Если s длиннее n, то копируются
толькоn символов и добавляется конечный NUL.

Функции strdupa и strndupa похожи, но для выделения буфера
используют alloca(3). Эти функции доступны только при
использовании GNU GCC и имеют те же ограничения, что и
alloca(3).


ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Функция strdup() возвращает указатель на строку-дубль или
NULL, если недостаточно памяти.

КОДЫ ОШИБОК
ENOMEM Недостаточно памяти под дубликат строки.

СООТВЕТСТВИЕ СТАНДАРТАМ

SVID 3, BSD 4.3. Функции strndup(), strdupa() и
strndupa() являются расширениями GNU.
Читать новости Linux в Telegram
Linux - strdup, strndup, strdupa, strndupa - дублирует строку
Мы в соцсетях ✉