strndupa(3) Library Functions Manual strndupa(3) NAME strndupa - nonstring duplicate-into-string using-alloca LIBRARY Standard C library (libc, -lc) SYNOPSIS #define _GNU_SOURCE /* See feature_test_macros(7) */ #include // see memory.h(3head) char *strndupa(size_t n; const char strn[n], size_t n); DESCRIPTION strndupa() is similar to strndup(3), but uses alloca(3) to allocate the buffer. It is equivalent to strncat(strcpy(alloca(n + 1), ""), strn, n) RETURN VALUE On success, this macro returns a pointer to the duplicated string. ATTRIBUTES For an explanation of the terms used in this section, see attributes(7). +--------------------------------------------+---------------+---------+ |Interface | Attribute | Value | +--------------------------------------------+---------------+---------+ |strndupa () | Thread safety | MT-Safe | +--------------------------------------------+---------------+---------+ STANDARDS GNU. HISTORY GNU. SEE ALSO memory.h(3head), alloca(3), strndup(3) Linux man-pages 6.19 2026-08-17 strndupa(3)