add directory Ref-docs

This commit is contained in:
gohigh
2024-02-19 00:21:47 -05:00
parent 5a46ddb732
commit ef50495c9d
2492 changed files with 1609142 additions and 0 deletions

View File

@@ -0,0 +1,344 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta name="generator" content="HTML Tidy, see www.w3.org">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link type="text/css" rel="stylesheet" href="style.css"><!-- Generated by The Open Group's rhtm tool v1.2.1 -->
<!-- Copyright (c) 2001 The Open Group, All Rights Reserved -->
<title>&lt;stdlib.h&gt;</title>
</head>
<body bgcolor="white">
<script type="text/javascript" language="JavaScript" src="../jscript/codes.js">
</script>
<basefont size="3"> <a name="&lt;stdlib.h&gt;"></a> <a name="tag_13_50"></a><!-- &lt;stdlib.h&gt; -->
<!--header start-->
<center><font size="2">The Open Group Base Specifications Issue 6<br>
IEEE Std 1003.1-2001<br>
Copyright &copy; 2001 The IEEE and The Open Group, All Rights reserved.</font></center>
<!--header end-->
<hr size="2" noshade>
<h4><a name="tag_13_50_01"></a>NAME</h4>
<blockquote>stdlib.h - standard library definitions</blockquote>
<h4><a name="tag_13_50_02"></a>SYNOPSIS</h4>
<blockquote class="synopsis">
<p><tt>#include &lt;stdlib.h&gt;</tt></p>
</blockquote>
<h4><a name="tag_13_50_03"></a>DESCRIPTION</h4>
<blockquote>
<div class="box"><sup>[<a href="javascript:open_code('CX')">CX</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]"
border="0"> Some of the functionality described on this reference page extends the ISO&nbsp;C standard. Applications shall define
the appropriate feature test macro (see the System Interfaces volume of IEEE&nbsp;Std&nbsp;1003.1-2001, <a href=
"../functions/xsh_chap02_02.html">Section 2.2, The Compilation Environment</a>) to enable the visibility of these symbols in this
header. <img src="../images/opt-end.gif" alt="[Option End]" border="0"></div>
<p>The <i>&lt;stdlib.h&gt;</i> header shall define the following macros:</p>
<dl compact>
<dt>EXIT_FAILURE</dt>
<dd>Unsuccessful termination for <a href="../functions/exit.html"><i>exit</i>()</a>; evaluates to a non-zero value.</dd>
<dt>EXIT_SUCCESS</dt>
<dd>Successful termination for <a href="../functions/exit.html"><i>exit</i>()</a>; evaluates to 0.</dd>
<dt>NULL</dt>
<dd>Null pointer.</dd>
<dt>{RAND_MAX}</dt>
<dd>Maximum value returned by <a href="../functions/rand.html"><i>rand</i>()</a>; at least 32767.</dd>
<dt>{MB_CUR_MAX}</dt>
<dd>Integer expression whose value is the maximum number of bytes in a character specified by the current locale.</dd>
</dl>
<p>The following data types shall be defined through <b>typedef</b>:</p>
<dl compact>
<dt><b>div_t</b></dt>
<dd>Structure type returned by the <a href="../functions/div.html"><i>div</i>()</a> function.</dd>
<dt><b>ldiv_t</b></dt>
<dd>Structure type returned by the <a href="../functions/ldiv.html"><i>ldiv</i>()</a> function.</dd>
<dt><b>lldiv_t</b></dt>
<dd>Structure type returned by the <a href="../functions/lldiv.html"><i>lldiv</i>()</a> function.</dd>
<dt><b>size_t</b></dt>
<dd>As described in <a href="stddef.h.html"><i>&lt;stddef.h&gt;</i></a> .</dd>
<dt><b>wchar_t</b></dt>
<dd>As described in <a href="stddef.h.html"><i>&lt;stddef.h&gt;</i></a> .</dd>
</dl>
<p>In addition, the following symbolic names and macros shall be defined as in <a href=
"sys/wait.h.html"><i>&lt;sys/wait.h&gt;</i></a> , for use in decoding the return value from <a href=
"../functions/system.html"><i>system</i>()</a>:</p>
<p><br>
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0"><br>
WNOHANG<br>
WUNTRACED<br>
WEXITSTATUS<br>
WIFEXITED<br>
WIFSIGNALED<br>
WIFSTOPPED<br>
WSTOPSIG<br>
WTERMSIG<br>
<img src="../images/opt-end.gif" alt="[Option End]" border="0"><br>
</p>
<p>The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.</p>
<pre>
<tt>void _Exit(int);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
long a64l(const char *);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
void abort(void);
int abs(int);
int atexit(void (*)(void));
double atof(const char *);
int atoi(const char *);
long atol(const char *);
long long atoll(const char *);
void *bsearch(const void *, const void *, size_t, size_t,
int (*)(const void *, const void *));
void *calloc(size_t, size_t);
div_t div(int, int);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
double drand48(void);
char *ecvt(double, int, int *restrict, int *restrict); (</tt><b>LEGACY</b> <tt>)
double erand48(unsigned short[3]);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
void exit(int);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
char *fcvt(double, int, int *restrict, int *restrict); (</tt><b>LEGACY</b> <tt>)
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
void free(void *);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
char *gcvt(double, int, char *); (</tt><b>LEGACY</b> <tt>)
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
char *getenv(const char *);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
int getsubopt(char **, char *const *, char **);
int grantpt(int);
char *initstate(unsigned, char *, size_t);
long jrand48(unsigned short[3]);
char *l64a(long);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
long labs(long);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
void lcong48(unsigned short[7]);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
ldiv_t ldiv(long, long);
long long llabs(long long);
lldiv_t lldiv(long long, long long);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
long lrand48(void);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
void *malloc(size_t);
int mblen(const char *, size_t);
size_t mbstowcs(wchar_t *restrict, const char *restrict, size_t);
int mbtowc(wchar_t *restrict, const char *restrict, size_t);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
char *mktemp(char *); (</tt><b>LEGACY</b> <tt>)
int mkstemp(char *);
long mrand48(void);
long nrand48(unsigned short[3]);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
<sup>[<a href="javascript:open_code('ADV')">ADV</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
int posix_memalign(void **, size_t, size_t);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
int posix_openpt(int);
char *ptsname(int);
int putenv(char *);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
void qsort(void *, size_t, size_t, int (*)(const void *,
const void *));
int rand(void);
<sup>[<a href="javascript:open_code('TSF')">TSF</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
int rand_r(unsigned *);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
long random(void);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
void *realloc(void *, size_t);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
char *realpath(const char *restrict, char *restrict);
unsigned short seed48(unsigned short[3]);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
<sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
int setenv(const char *, const char *, int);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
void setkey(const char *);
char *setstate(const char *);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
void srand(unsigned);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
void srand48(long);
void srandom(unsigned);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
double strtod(const char *restrict, char **restrict);
float strtof(const char *restrict, char **restrict);
long strtol(const char *restrict, char **restrict, int);
long double strtold(const char *restrict, char **restrict);
long long strtoll(const char *restrict, char **restrict, int);
unsigned long strtoul(const char *restrict, char **restrict, int);
unsigned long long
strtoull(const char *restrict, char **restrict, int);
int system(const char *);
<sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
int unlockpt(int);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
<sup>[<a href="javascript:open_code('CX')">CX</a>]</sup><img src="../images/opt-start.gif" alt="[Option Start]" border="0">
int unsetenv(const char *);
<img src="../images/opt-end.gif" alt="[Option End]" border="0">
size_t wcstombs(char *restrict, const wchar_t *restrict, size_t);
int wctomb(char *, wchar_t);
</tt>
</pre>
<p><sup>[<a href="javascript:open_code('XSI')">XSI</a>]</sup> <img src="../images/opt-start.gif" alt="[Option Start]" border="0">
Inclusion of the <i>&lt;stdlib.h&gt;</i> header may also make visible all symbols from <a href=
"../basedefs/stddef.h.html"><i>&lt;stddef.h&gt;</i></a>, <a href="../basedefs/limits.h.html"><i>&lt;limits.h&gt;</i></a>, <a href=
"../basedefs/math.h.html"><i>&lt;math.h&gt;</i></a>, and <a href="../basedefs/sys/wait.h.html"><i>&lt;sys/wait.h&gt;</i></a>. <img
src="../images/opt-end.gif" alt="[Option End]" border="0"></p>
</blockquote>
<hr>
<div class="box"><em>The following sections are informative.</em></div>
<h4><a name="tag_13_50_04"></a>APPLICATION USAGE</h4>
<blockquote>
<p>None.</p>
</blockquote>
<h4><a name="tag_13_50_05"></a>RATIONALE</h4>
<blockquote>
<p>None.</p>
</blockquote>
<h4><a name="tag_13_50_06"></a>FUTURE DIRECTIONS</h4>
<blockquote>
<p>None.</p>
</blockquote>
<h4><a name="tag_13_50_07"></a>SEE ALSO</h4>
<blockquote>
<p><a href="limits.h.html"><i>&lt;limits.h&gt;</i></a> , <a href="math.h.html"><i>&lt;math.h&gt;</i></a> , <a href=
"stddef.h.html"><i>&lt;stddef.h&gt;</i></a> , <a href="sys/types.h.html"><i>&lt;sys/types.h&gt;</i></a> , <a href=
"sys/wait.h.html"><i>&lt;sys/wait.h&gt;</i></a> , the System Interfaces volume of IEEE&nbsp;Std&nbsp;1003.1-2001, <a href=
"../functions/_Exit.html"><i>_Exit</i>()</a>, <a href="../functions/a64l.html"><i>a64l</i>()</a>, <a href=
"../functions/abort.html"><i>abort</i>()</a>, <a href="../functions/abs.html"><i>abs</i>()</a>, <a href=
"../functions/atexit.html"><i>atexit</i>()</a>, <a href="../functions/atof.html"><i>atof</i>()</a>, <a href=
"../functions/atoi.html"><i>atoi</i>()</a>, <a href="../functions/atol.html"><i>atol</i>()</a>, <a href=
"../functions/atoll.html"><i>atoll</i>()</a>, <a href="../functions/bsearch.html"><i>bsearch</i>()</a>, <a href=
"../functions/calloc.html"><i>calloc</i>()</a>, <a href="../functions/div.html"><i>div</i>()</a>, <a href=
"../functions/drand48.html"><i>drand48</i>()</a>, <a href="../functions/erand48.html"><i>erand48</i>()</a>, <a href=
"../functions/exit.html"><i>exit</i>()</a>, <a href="../functions/free.html"><i>free</i>()</a>, <a href=
"../functions/getenv.html"><i>getenv</i>()</a>, <a href="../functions/getsubopt.html"><i>getsubopt</i>()</a>, <a href=
"../functions/grantpt.html"><i>grantpt</i>()</a>, <a href="../functions/initstate.html"><i>initstate</i>()</a>, <a href=
"../functions/jrand48.html"><i>jrand48</i>()</a>, <a href="../functions/l64a.html"><i>l64a</i>()</a>, <a href=
"../functions/labs.html"><i>labs</i>()</a>, <a href="../functions/lcong48.html"><i>lcong48</i>()</a>, <a href=
"../functions/ldiv.html"><i>ldiv</i>()</a>, <a href="../functions/llabs.html"><i>llabs</i>()</a>, <a href=
"../functions/lldiv.html"><i>lldiv</i>()</a>, <a href="../functions/lrand48.html"><i>lrand48</i>()</a>, <a href=
"../functions/malloc.html"><i>malloc</i>()</a>, <a href="../functions/mblen.html"><i>mblen</i>()</a>, <a href=
"../functions/mbstowcs.html"><i>mbstowcs</i>()</a>, <a href="../functions/mbtowc.html"><i>mbtowc</i>()</a>, <a href=
"../functions/mkstemp.html"><i>mkstemp</i>()</a>, <a href="../functions/mrand48.html"><i>mrand48</i>()</a>, <a href=
"../functions/nrand48.html"><i>nrand48</i>()</a>, <a href="../functions/posix_memalign.html"><i>posix_memalign</i>()</a>, <a href=
"../functions/ptsname.html"><i>ptsname</i>()</a>, <a href="../functions/putenv.html"><i>putenv</i>()</a>, <a href=
"../functions/qsort.html"><i>qsort</i>()</a>, <a href="../functions/rand.html"><i>rand</i>()</a>, <a href=
"../functions/realloc.html"><i>realloc</i>()</a>, <a href="../functions/realpath.html"><i>realpath</i>()</a>, <a href=
"../functions/setstate.html"><i>setstate</i>()</a>, <a href="../functions/srand.html"><i>srand</i>()</a>, <a href=
"../functions/srand48.html"><i>srand48</i>()</a>, <a href="../functions/srandom.html"><i>srandom</i>()</a>, <a href=
"../functions/strtod.html"><i>strtod</i>()</a>, <a href="../functions/strtof.html"><i>strtof</i>()</a>, <a href=
"../functions/strtol.html"><i>strtol</i>()</a>, <a href="../functions/strtold.html"><i>strtold</i>()</a>, <a href=
"../functions/strtoll.html"><i>strtoll</i>()</a>, <a href="../functions/strtoul.html"><i>strtoul</i>()</a>, <a href=
"../functions/strtoull.html"><i>strtoull</i>()</a>, <a href="../functions/unlockpt.html"><i>unlockpt</i>()</a>, <a href=
"../functions/wcstombs.html"><i>wcstombs</i>()</a>, <a href="../functions/wctomb.html"><i>wctomb</i>()</a></p>
</blockquote>
<h4><a name="tag_13_50_08"></a>CHANGE HISTORY</h4>
<blockquote>
<p>First released in Issue 3.</p>
</blockquote>
<h4><a name="tag_13_50_09"></a>Issue 5</h4>
<blockquote>
<p>The DESCRIPTION is updated for alignment with the POSIX Threads Extension.</p>
<p>The <i>ttyslot</i>() and <i>valloc</i>() functions are marked LEGACY.</p>
<p>The type of the third argument to <a href="../functions/initstate.html"><i>initstate</i>()</a> is changed from <b>int</b> to
<b>size_t</b>. The type of the return value from <a href="../functions/setstate.html"><i>setstate</i>()</a> is changed from
<b>char</b> to <b>char *</b>, and the type of the first argument is changed from <b>char *</b> to <b>const char *</b>.</p>
</blockquote>
<h4><a name="tag_13_50_10"></a>Issue 6</h4>
<blockquote>
<p>The Open Group Corrigendum U021/1 is applied, correcting the prototype for <a href=
"../functions/realpath.html"><i>realpath</i>()</a> to be consistent with the reference page.</p>
<p>The Open Group Corrigendum U028/13 is applied, correcting the prototype for <a href=
"../functions/putenv.html"><i>putenv</i>()</a> to be consistent with the reference page.</p>
<p>The <a href="../functions/rand_r.html"><i>rand_r</i>()</a> function is marked as part of the Thread-Safe Functions option.</p>
<p>Function prototypes for <a href="../functions/setenv.html"><i>setenv</i>()</a> and <a href=
"../functions/unsetenv.html"><i>unsetenv</i>()</a> are added.</p>
<p>The <a href="../functions/posix_memalign.html"><i>posix_memalign</i>()</a> function is added for alignment with
IEEE&nbsp;Std&nbsp;1003.1d-1999.</p>
<p>This reference page is updated to align with the ISO/IEC&nbsp;9899:1999 standard.</p>
<p>The <a href="../functions/ecvt.html"><i>ecvt</i>()</a>, <a href="../functions/fcvt.html"><i>fcvt</i>()</a>, <a href=
"../functions/gcvt.html"><i>gcvt</i>()</a>, and <a href="../functions/mktemp.html"><i>mktemp</i>()</a> functions are marked
LEGACY.</p>
<p>The <i>ttyslot</i>() and <i>valloc</i>() functions are removed as they were previously marked LEGACY.</p>
<p>Extensions beyond the ISO&nbsp;C standard are marked.</p>
</blockquote>
<div class="box"><em>End of informative text.</em></div>
<hr>
<hr size="2" noshade>
<center><font size="2"><!--footer start-->
UNIX &reg; is a registered Trademark of The Open Group.<br>
POSIX &reg; is a registered Trademark of The IEEE.<br>
[ <a href="../mindex.html">Main Index</a> | <a href="../basedefs/contents.html">XBD</a> | <a href=
"../utilities/contents.html">XCU</a> | <a href="../functions/contents.html">XSH</a> | <a href="../xrat/contents.html">XRAT</a>
]</font></center>
<!--footer end-->
<hr size="2" noshade>
</body>
</html>