man-pages/man3/malloc_usable_size.3.html
2021-03-31 01:06:50 +01:00

121 lines
3.1 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML><HEAD><TITLE>Man page of MALLOC_USABLE_SIZE</TITLE>
</HEAD><BODY>
<H1>MALLOC_USABLE_SIZE</H1>
Section: Linux Programmer's Manual (3)<BR>Updated: 2017-09-15<BR><A HREF="#index">Index</A>
<A HREF="/cgi-bin/man/man2html">Return to Main Contents</A><HR>
<A NAME="lbAB">&nbsp;</A>
<H2>NAME</H2>
malloc_usable_size - obtain size of block of memory allocated from heap
<A NAME="lbAC">&nbsp;</A>
<H2>SYNOPSIS</H2>
<B>#include &lt;<A HREF="file:///usr/include/malloc.h">malloc.h</A>&gt;</B>
<P>
<B>size_t malloc_usable_size (void *</B><I>ptr</I><B>);</B>
<A NAME="lbAD">&nbsp;</A>
<H2>DESCRIPTION</H2>
The
<B>malloc_usable_size</B>()
function returns the number of usable bytes in the block pointed to by
<I>ptr</I>,
a pointer to a block of memory allocated by
<B><A HREF="/cgi-bin/man/man2html?3+malloc">malloc</A></B>(3)
or a related function.
<A NAME="lbAE">&nbsp;</A>
<H2>RETURN VALUE</H2>
<B>malloc_usable_size</B>()
returns the number of usable bytes in
the block of allocated memory pointed to by
<I>ptr</I>.
If
<I>ptr</I>
is NULL, 0 is returned.
<A NAME="lbAF">&nbsp;</A>
<H2>ATTRIBUTES</H2>
For an explanation of the terms used in this section, see
<B><A HREF="/cgi-bin/man/man2html?7+attributes">attributes</A></B>(7).
<TABLE BORDER>
<TR VALIGN=top><TD><B>Interface</B></TD><TD><B>Attribute</B></TD><TD><B>Value</B><BR></TD></TR>
<TR VALIGN=top><TD>
<B>malloc_usable_size</B>()
</TD><TD>Thread safety</TD><TD>MT-Safe<BR></TD></TR>
</TABLE>
<A NAME="lbAG">&nbsp;</A>
<H2>CONFORMING TO</H2>
This function is a GNU extension.
<A NAME="lbAH">&nbsp;</A>
<H2>NOTES</H2>
The value returned by
<B>malloc_usable_size</B>()
may be greater than the requested size of the allocation because
of alignment and minimum size constraints.
Although the excess bytes can be overwritten by the application
without ill effects,
this is not good programming practice:
the number of excess bytes in an allocation depends on
the underlying implementation.
<P>
The main use of this function is for debugging and introspection.
<A NAME="lbAI">&nbsp;</A>
<H2>SEE ALSO</H2>
<B><A HREF="/cgi-bin/man/man2html?3+malloc">malloc</A></B>(3)
<A NAME="lbAJ">&nbsp;</A>
<H2>COLOPHON</H2>
This page is part of release 5.05 of the Linux
<I>man-pages</I>
project.
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
<A HREF="https://www.kernel.org/doc/man-pages/.">https://www.kernel.org/doc/man-pages/.</A>
<P>
<HR>
<A NAME="index">&nbsp;</A><H2>Index</H2>
<DL>
<DT id="1"><A HREF="#lbAB">NAME</A><DD>
<DT id="2"><A HREF="#lbAC">SYNOPSIS</A><DD>
<DT id="3"><A HREF="#lbAD">DESCRIPTION</A><DD>
<DT id="4"><A HREF="#lbAE">RETURN VALUE</A><DD>
<DT id="5"><A HREF="#lbAF">ATTRIBUTES</A><DD>
<DT id="6"><A HREF="#lbAG">CONFORMING TO</A><DD>
<DT id="7"><A HREF="#lbAH">NOTES</A><DD>
<DT id="8"><A HREF="#lbAI">SEE ALSO</A><DD>
<DT id="9"><A HREF="#lbAJ">COLOPHON</A><DD>
</DL>
<HR>
This document was created by
<A HREF="/cgi-bin/man/man2html">man2html</A>,
using the manual pages.<BR>
Time: 00:05:47 GMT, March 31, 2021
</BODY>
</HTML>