Dynamic memory extensions
From cppreference.com
< clrm; | experimental
Extensions to the C Library Part II: Dynamic Allocation Functions, ISO/IEC TR 24731-2:2010, defines the following new components for the C standard library:
__STDC_ALLOC_LIB__ |
integer constant of type long indicating conformance level (macro constant) |
Defined in header
<stdio.h> | |
(dynamic memory TR) |
opens a fixed-size memory buffer as an I/O stream (function) |
(dynamic memory TR) |
opens a dynamically resized memory buffer as an I/O stream (function) |
(dynamic memory TR) |
variants of sprintf etc that write to automatically-allocated buffer and return a pointer to it (function) |
(dynamic memory TR) |
read from a stream into a automatically resized buffer until delimiter/end of line (function) |
Defined in header
<string.h> | |
(dynamic memory TR) |
allocate a copy of a string (function) |
(dynamic memory TR) |
allocate a copy of a string up to specified size (function) |
This library extension also introduces assignment-allocation character m
for use with %s
, %[
, and %c
conversion specifiers in fscanf and fwscanf family of functions.
Notes
The functions fmemopen
, open_memstream
, open_wmemstream
, getdelim
, getline
, strdup
, strndup
, and the extensions to fscanf
are available in POSIX (ISO/IEC 9945:2003).
The functions asprintf
and vasprintf
are available in Linux Standard Base (ISO/IEC IS 23360:2006)