valloc(3) Library Functions Manual valloc(3) NAME valloc - page-aligned memory allocation LIBRARY Standard C library (libc, -lc) SYNOPSIS #include [[deprecated]] void *valloc(size_t size); Feature Test Macro Requirements for glibc (see feature_test_macros(7)): valloc(): Since glibc 2.12: (_XOPEN_SOURCE >= 500) && !(_POSIX_C_SOURCE >= 200112L) || /* glibc >= 2.19: */ _DEFAULT_SOURCE || /* glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE Before glibc 2.12: _BSD_SOURCE || _XOPEN_SOURCE >= 500 DESCRIPTION valloc() allocates size bytes and returns a pointer to the allocated memory. The memory address will be a multiple of the page size. It is equivalent to memalign(sysconf(_SC_PAGESIZE),size). ATTRIBUTES For an explanation of the terms used in this section, see attributes(7). +-------------------------------------+---------------+----------------+ |Interface | Attribute | Value | +-------------------------------------+---------------+----------------+ |valloc () | Thread safety | MT-Unsafe init | +-------------------------------------+---------------+----------------+ VERSIONS According to SUSv2, valloc() is declared in . glibc declares it in , and also in if suitable feature test macros are defined (see above). STANDARDS BSD, GNU. HISTORY glibc 2.0. 3.0BSD. Documented as obsolete in 4.3BSD, and as legacy in SUSv2. CAVEATS See memalign(3). SEE ALSO memalign(3) Linux man-pages 6.19 2025-12-13 valloc(3)