<html lang="en">
<head>
<title>Library Summary - The GNU C Library</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="The GNU C Library">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Language-Features.html#Language-Features" title="Language Features">
<link rel="next" href="Installation.html#Installation" title="Installation">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU C library.

This is Edition 0.12, last updated 2007-10-27,
of `The GNU C Library Reference Manual', for version
2.8 (Sourcery G++ Lite 2011.03-41).

Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
2003, 2007, 2008, 2010 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software Needs Free Documentation''
and ``GNU Lesser General Public License'', the Front-Cover texts being
``A GNU Manual'', and with the Back-Cover Texts as in (a) below.  A
copy of the license is included in the section entitled "GNU Free
Documentation License".

(a) The FSF's Back-Cover Text is: ``You have the freedom to
copy and modify this GNU manual.  Buying copies from the FSF
supports it in developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Library-Summary"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Installation.html#Installation">Installation</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Language-Features.html#Language-Features">Language Features</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>

<!-- %MENU% A summary showing the syntax, header file, and derivation of each library feature -->
<h2 class="appendix">Appendix B Summary of Library Facilities</h2>

<p>This appendix is a complete list of the facilities declared within the
header files supplied with the GNU C library.  Each entry also lists the
standard or other source from which each facility is derived, and tells
you where in the manual you can find more information about how to use
it.

<!-- This table runs wide.  Shrink fonts. -->
     <dl>
<!-- summary.texi is generated from the other Texinfo files. -->
<!-- See the Makefile and summary.awk for the details. -->
<!-- DO NOT EDIT THIS FILE! -->
<!-- This file is generated by summary.awk from the Texinfo sources. -->
<!-- a64l -->
<dt><code>long int a64l (const char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (XPG):  <a href="Encode-Binary-Data.html#Encode-Binary-Data">Encode Binary Data</a>.

     <!-- abort -->
     <br><dt><code>void abort (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Aborting-a-Program.html#Aborting-a-Program">Aborting a Program</a>.

     <!-- abs -->
     <br><dt><code>int abs (int </code><var>number</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- accept -->
     <br><dt><code>int accept (int </code><var>socket</var><code>, struct sockaddr *</code><var>addr</var><code>, socklen_t *</code><var>length_ptr</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Accepting-Connections.html#Accepting-Connections">Accepting Connections</a>.

     <!-- access -->
     <br><dt><code>int access (const char *</code><var>filename</var><code>, int </code><var>how</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Testing-File-Access.html#Testing-File-Access">Testing File Access</a>.

     <!-- ACCOUNTING -->
     <br><dt><code>ACCOUNTING</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- acos -->
     <br><dt><code>double acos (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- acosf -->
     <br><dt><code>float acosf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- acosh -->
     <br><dt><code>double acosh (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- acoshf -->
     <br><dt><code>float acoshf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- acoshl -->
     <br><dt><code>long double acoshl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- acosl -->
     <br><dt><code>long double acosl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- addmntent -->
     <br><dt><code>int addmntent (FILE *</code><var>stream</var><code>, const struct mntent *</code><var>mnt</var><code>)</code><dd>
<samp><span class="file">mntent.h</span></samp> (BSD):  <a href="mtab.html#mtab">mtab</a>.

     <!-- adjtime -->
     <br><dt><code>int adjtime (const struct timeval *</code><var>delta</var><code>, struct timeval *</code><var>olddelta</var><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="High_002dResolution-Calendar.html#High_002dResolution-Calendar">High-Resolution Calendar</a>.

     <!-- adjtimex -->
     <br><dt><code>int adjtimex (struct timex *</code><var>timex</var><code>)</code><dd>
<samp><span class="file">sys/timex.h</span></samp> (GNU):  <a href="High_002dResolution-Calendar.html#High_002dResolution-Calendar">High-Resolution Calendar</a>.

     <!-- AF_FILE -->
     <br><dt><code>AF_FILE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (GNU):  <a href="Address-Formats.html#Address-Formats">Address Formats</a>.

     <!-- AF_INET -->
     <br><dt><code>AF_INET</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Address-Formats.html#Address-Formats">Address Formats</a>.

     <!-- AF_INET6 -->
     <br><dt><code>AF_INET6</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (IPv6 Basic API):  <a href="Address-Formats.html#Address-Formats">Address Formats</a>.

     <!-- AF_LOCAL -->
     <br><dt><code>AF_LOCAL</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (POSIX):  <a href="Address-Formats.html#Address-Formats">Address Formats</a>.

     <!-- AF_UNIX -->
     <br><dt><code>AF_UNIX</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD, Unix98):  <a href="Address-Formats.html#Address-Formats">Address Formats</a>.

     <!-- AF_UNSPEC -->
     <br><dt><code>AF_UNSPEC</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Address-Formats.html#Address-Formats">Address Formats</a>.

     <!-- aio_cancel -->
     <br><dt><code>int aio_cancel (int </code><var>fildes</var><code>, struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Cancel-AIO-Operations.html#Cancel-AIO-Operations">Cancel AIO Operations</a>.

     <!-- aio_cancel64 -->
     <br><dt><code>int aio_cancel64 (int </code><var>fildes</var><code>, struct aiocb64 *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Cancel-AIO-Operations.html#Cancel-AIO-Operations">Cancel AIO Operations</a>.

     <!-- aio_error -->
     <br><dt><code>int aio_error (const struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Status-of-AIO-Operations.html#Status-of-AIO-Operations">Status of AIO Operations</a>.

     <!-- aio_error64 -->
     <br><dt><code>int aio_error64 (const struct aiocb64 *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Status-of-AIO-Operations.html#Status-of-AIO-Operations">Status of AIO Operations</a>.

     <!-- aio_fsync -->
     <br><dt><code>int aio_fsync (int </code><var>op</var><code>, struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Synchronizing-AIO-Operations.html#Synchronizing-AIO-Operations">Synchronizing AIO Operations</a>.

     <!-- aio_fsync64 -->
     <br><dt><code>int aio_fsync64 (int </code><var>op</var><code>, struct aiocb64 *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Synchronizing-AIO-Operations.html#Synchronizing-AIO-Operations">Synchronizing AIO Operations</a>.

     <!-- aio_init -->
     <br><dt><code>void aio_init (const struct aioinit *</code><var>init</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (GNU):  <a href="Configuration-of-AIO.html#Configuration-of-AIO">Configuration of AIO</a>.

     <!-- aio_read -->
     <br><dt><code>int aio_read (struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Asynchronous-Reads_002fWrites.html#Asynchronous-Reads_002fWrites">Asynchronous Reads/Writes</a>.

     <!-- aio_read64 -->
     <br><dt><code>int aio_read64 (struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Asynchronous-Reads_002fWrites.html#Asynchronous-Reads_002fWrites">Asynchronous Reads/Writes</a>.

     <!-- aio_return -->
     <br><dt><code>ssize_t aio_return (const struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Status-of-AIO-Operations.html#Status-of-AIO-Operations">Status of AIO Operations</a>.

     <!-- aio_return64 -->
     <br><dt><code>int aio_return64 (const struct aiocb64 *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Status-of-AIO-Operations.html#Status-of-AIO-Operations">Status of AIO Operations</a>.

     <!-- aio_suspend -->
     <br><dt><code>int aio_suspend (const struct aiocb *const </code><var>list</var><code>[], int </code><var>nent</var><code>, const struct timespec *</code><var>timeout</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Synchronizing-AIO-Operations.html#Synchronizing-AIO-Operations">Synchronizing AIO Operations</a>.

     <!-- aio_suspend64 -->
     <br><dt><code>int aio_suspend64 (const struct aiocb64 *const </code><var>list</var><code>[], int </code><var>nent</var><code>, const struct timespec *</code><var>timeout</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Synchronizing-AIO-Operations.html#Synchronizing-AIO-Operations">Synchronizing AIO Operations</a>.

     <!-- aio_write -->
     <br><dt><code>int aio_write (struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Asynchronous-Reads_002fWrites.html#Asynchronous-Reads_002fWrites">Asynchronous Reads/Writes</a>.

     <!-- aio_write64 -->
     <br><dt><code>int aio_write64 (struct aiocb *</code><var>aiocbp</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Asynchronous-Reads_002fWrites.html#Asynchronous-Reads_002fWrites">Asynchronous Reads/Writes</a>.

     <!-- alarm -->
     <br><dt><code>unsigned int alarm (unsigned int </code><var>seconds</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Setting-an-Alarm.html#Setting-an-Alarm">Setting an Alarm</a>.

     <!-- alloca -->
     <br><dt><code>void * alloca (size_t </code><var>size</var><code>);</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU, BSD):  <a href="Variable-Size-Automatic.html#Variable-Size-Automatic">Variable Size Automatic</a>.

     <!-- alphasort -->
     <br><dt><code>int alphasort (const void *</code><var>a</var><code>, const void *</code><var>b</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (BSD/SVID):  <a href="Scanning-Directory-Content.html#Scanning-Directory-Content">Scanning Directory Content</a>.

     <!-- alphasort64 -->
     <br><dt><code>int alphasort64 (const void *</code><var>a</var><code>, const void *</code><var>b</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (GNU):  <a href="Scanning-Directory-Content.html#Scanning-Directory-Content">Scanning Directory Content</a>.

     <!-- ALTWERASE -->
     <br><dt><code>tcflag_t ALTWERASE</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ARG_MAX -->
     <br><dt><code>int ARG_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- argp_err_exit_status -->
     <br><dt><code>error_t argp_err_exit_status</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Global-Variables.html#Argp-Global-Variables">Argp Global Variables</a>.

     <!-- argp_error -->
     <br><dt><code>void argp_error (const struct argp_state *</code><var>state</var><code>, const char *</code><var>fmt</var><code>, ...)</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Helper-Functions.html#Argp-Helper-Functions">Argp Helper Functions</a>.

     <!-- ARGP_ERR_UNKNOWN -->
     <br><dt><code>int ARGP_ERR_UNKNOWN</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Parser-Functions.html#Argp-Parser-Functions">Argp Parser Functions</a>.

     <!-- argp_failure -->
     <br><dt><code>void argp_failure (const struct argp_state *</code><var>state</var><code>, int </code><var>status</var><code>, int </code><var>errnum</var><code>, const char *</code><var>fmt</var><code>, ...)</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Helper-Functions.html#Argp-Helper-Functions">Argp Helper Functions</a>.

     <!-- argp_help -->
     <br><dt><code>void argp_help (const struct argp *</code><var>argp</var><code>, FILE *</code><var>stream</var><code>, unsigned </code><var>flags</var><code>, char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Help.html#Argp-Help">Argp Help</a>.

     <!-- ARGP_IN_ORDER -->
     <br><dt><code>ARGP_IN_ORDER</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- ARGP_KEY_ARG -->
     <br><dt><code>ARGP_KEY_ARG</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_KEY_ARGS -->
     <br><dt><code>ARGP_KEY_ARGS</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_KEY_END -->
     <br><dt><code>ARGP_KEY_END</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_KEY_ERROR -->
     <br><dt><code>ARGP_KEY_ERROR</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_KEY_FINI -->
     <br><dt><code>ARGP_KEY_FINI</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_KEY_HELP_ARGS_DOC -->
     <br><dt><code>ARGP_KEY_HELP_ARGS_DOC</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Help-Filter-Keys.html#Argp-Help-Filter-Keys">Argp Help Filter Keys</a>.

     <!-- ARGP_KEY_HELP_DUP_ARGS_NOTE -->
     <br><dt><code>ARGP_KEY_HELP_DUP_ARGS_NOTE</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Help-Filter-Keys.html#Argp-Help-Filter-Keys">Argp Help Filter Keys</a>.

     <!-- ARGP_KEY_HELP_EXTRA -->
     <br><dt><code>ARGP_KEY_HELP_EXTRA</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Help-Filter-Keys.html#Argp-Help-Filter-Keys">Argp Help Filter Keys</a>.

     <!-- ARGP_KEY_HELP_HEADER -->
     <br><dt><code>ARGP_KEY_HELP_HEADER</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Help-Filter-Keys.html#Argp-Help-Filter-Keys">Argp Help Filter Keys</a>.

     <!-- ARGP_KEY_HELP_POST_DOC -->
     <br><dt><code>ARGP_KEY_HELP_POST_DOC</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Help-Filter-Keys.html#Argp-Help-Filter-Keys">Argp Help Filter Keys</a>.

     <!-- ARGP_KEY_HELP_PRE_DOC -->
     <br><dt><code>ARGP_KEY_HELP_PRE_DOC</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Help-Filter-Keys.html#Argp-Help-Filter-Keys">Argp Help Filter Keys</a>.

     <!-- ARGP_KEY_INIT -->
     <br><dt><code>ARGP_KEY_INIT</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_KEY_NO_ARGS -->
     <br><dt><code>ARGP_KEY_NO_ARGS</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_KEY_SUCCESS -->
     <br><dt><code>ARGP_KEY_SUCCESS</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Special-Keys.html#Argp-Special-Keys">Argp Special Keys</a>.

     <!-- ARGP_LONG_ONLY -->
     <br><dt><code>ARGP_LONG_ONLY</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- ARGP_NO_ARGS -->
     <br><dt><code>ARGP_NO_ARGS</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- ARGP_NO_ERRS -->
     <br><dt><code>ARGP_NO_ERRS</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- ARGP_NO_EXIT -->
     <br><dt><code>ARGP_NO_EXIT</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- ARGP_NO_HELP -->
     <br><dt><code>ARGP_NO_HELP</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- argp_parse -->
     <br><dt><code>error_t argp_parse (const struct argp *</code><var>argp</var><code>, int </code><var>argc</var><code>, char **</code><var>argv</var><code>, unsigned </code><var>flags</var><code>, int *</code><var>arg_index</var><code>, void *</code><var>input</var><code>)</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp.html#Argp">Suboptions</a>.

     <!-- ARGP_PARSE_ARGV0 -->
     <br><dt><code>ARGP_PARSE_ARGV0</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- argp_program_bug_address -->
     <br><dt><code>const char * argp_program_bug_address</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Global-Variables.html#Argp-Global-Variables">Argp Global Variables</a>.

     <!-- argp_program_version -->
     <br><dt><code>const char * argp_program_version</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Global-Variables.html#Argp-Global-Variables">Argp Global Variables</a>.

     <!-- argp_program_version_hook -->
     <br><dt><code>argp_program_version_hook</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Global-Variables.html#Argp-Global-Variables">Argp Global Variables</a>.

     <!-- ARGP_SILENT -->
     <br><dt><code>ARGP_SILENT</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Flags.html#Argp-Flags">Argp Flags</a>.

     <!-- argp_state_help -->
     <br><dt><code>void argp_state_help (const struct argp_state *</code><var>state</var><code>, FILE *</code><var>stream</var><code>, unsigned </code><var>flags</var><code>)</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Helper-Functions.html#Argp-Helper-Functions">Argp Helper Functions</a>.

     <!-- argp_usage -->
     <br><dt><code>void argp_usage (const struct argp_state *</code><var>state</var><code>)</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Helper-Functions.html#Argp-Helper-Functions">Argp Helper Functions</a>.

     <!-- argz_add -->
     <br><dt><code>error_t argz_add (char **</code><var>argz</var><code>, size_t *</code><var>argz_len</var><code>, const char *</code><var>str</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_add_sep -->
     <br><dt><code>error_t argz_add_sep (char **</code><var>argz</var><code>, size_t *</code><var>argz_len</var><code>, const char *</code><var>str</var><code>, int </code><var>delim</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_append -->
     <br><dt><code>error_t argz_append (char **</code><var>argz</var><code>, size_t *</code><var>argz_len</var><code>, const char *</code><var>buf</var><code>, size_t </code><var>buf_len</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_count -->
     <br><dt><code>size_t argz_count (const char *</code><var>argz</var><code>, size_t </code><var>arg_len</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_create -->
     <br><dt><code>error_t argz_create (char *const </code><var>argv</var><code>[], char **</code><var>argz</var><code>, size_t *</code><var>argz_len</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_create_sep -->
     <br><dt><code>error_t argz_create_sep (const char *</code><var>string</var><code>, int </code><var>sep</var><code>, char **</code><var>argz</var><code>, size_t *</code><var>argz_len</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_delete -->
     <br><dt><code>void argz_delete (char **</code><var>argz</var><code>, size_t *</code><var>argz_len</var><code>, char *</code><var>entry</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_extract -->
     <br><dt><code>void argz_extract (char *</code><var>argz</var><code>, size_t </code><var>argz_len</var><code>, char **</code><var>argv</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_insert -->
     <br><dt><code>error_t argz_insert (char **</code><var>argz</var><code>, size_t *</code><var>argz_len</var><code>, char *</code><var>before</var><code>, const char *</code><var>entry</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_next -->
     <br><dt><code>char * argz_next (char *</code><var>argz</var><code>, size_t </code><var>argz_len</var><code>, const char *</code><var>entry</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_replace -->
     <br><dt><code>error_t argz_replace (char&nbsp;**</code><var>argz</var><code>,&nbsp;size_t&nbsp;*</code><var>argz_len</var><code><!-- /@w -->, const&nbsp;char&nbsp;*</code><var>str</var><code>,&nbsp;const&nbsp;char&nbsp;*</code><var>with</var><code><!-- /@w -->, unsigned&nbsp;*</code><var>replace_count</var><code><!-- /@w -->)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- argz_stringify -->
     <br><dt><code>void argz_stringify (char *</code><var>argz</var><code>, size_t </code><var>len</var><code>, int </code><var>sep</var><code>)</code><dd>
<samp><span class="file">argz.h</span></samp> (GNU):  <a href="Argz-Functions.html#Argz-Functions">Argz Functions</a>.

     <!-- asctime -->
     <br><dt><code>char * asctime (const struct tm *</code><var>brokentime</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Formatting-Calendar-Time.html#Formatting-Calendar-Time">Formatting Calendar Time</a>.

     <!-- asctime_r -->
     <br><dt><code>char * asctime_r (const struct tm *</code><var>brokentime</var><code>, char *</code><var>buffer</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1c):  <a href="Formatting-Calendar-Time.html#Formatting-Calendar-Time">Formatting Calendar Time</a>.

     <!-- asin -->
     <br><dt><code>double asin (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- asinf -->
     <br><dt><code>float asinf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- asinh -->
     <br><dt><code>double asinh (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- asinhf -->
     <br><dt><code>float asinhf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- asinhl -->
     <br><dt><code>long double asinhl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- asinl -->
     <br><dt><code>long double asinl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- asprintf -->
     <br><dt><code>int asprintf (char **</code><var>ptr</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Dynamic-Output.html#Dynamic-Output">Dynamic Output</a>.

     <!-- assert -->
     <br><dt><code>void assert (int </code><var>expression</var><code>)</code><dd>
<samp><span class="file">assert.h</span></samp> (ISO):  <a href="Consistency-Checking.html#Consistency-Checking">Consistency Checking</a>.

     <!-- assert_perror -->
     <br><dt><code>void assert_perror (int </code><var>errnum</var><code>)</code><dd>
<samp><span class="file">assert.h</span></samp> (GNU):  <a href="Consistency-Checking.html#Consistency-Checking">Consistency Checking</a>.

     <!-- atan -->
     <br><dt><code>double atan (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- atan2 -->
     <br><dt><code>double atan2 (double </code><var>y</var><code>, double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- atan2f -->
     <br><dt><code>float atan2f (float </code><var>y</var><code>, float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- atan2l -->
     <br><dt><code>long double atan2l (long double </code><var>y</var><code>, long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- atanf -->
     <br><dt><code>float atanf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- atanh -->
     <br><dt><code>double atanh (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- atanhf -->
     <br><dt><code>float atanhf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- atanhl -->
     <br><dt><code>long double atanhl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- atanl -->
     <br><dt><code>long double atanl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- atexit -->
     <br><dt><code>int atexit (void (*</code><var>function</var><code>) (void))</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Cleanups-on-Exit.html#Cleanups-on-Exit">Cleanups on Exit</a>.

     <!-- atof -->
     <br><dt><code>double atof (const char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Floats.html#Parsing-of-Floats">Parsing of Floats</a>.

     <!-- atoi -->
     <br><dt><code>int atoi (const char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- atol -->
     <br><dt><code>long int atol (const char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- atoll -->
     <br><dt><code>long long int atoll (const char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- B0 -->
     <br><dt><code>B0</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B110 -->
     <br><dt><code>B110</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B115200 -->
     <br><dt><code>B115200</code><dd>
<samp><span class="file">termios.h</span></samp> (GNU):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B1200 -->
     <br><dt><code>B1200</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B134 -->
     <br><dt><code>B134</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B150 -->
     <br><dt><code>B150</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B1800 -->
     <br><dt><code>B1800</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B19200 -->
     <br><dt><code>B19200</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B200 -->
     <br><dt><code>B200</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B230400 -->
     <br><dt><code>B230400</code><dd>
<samp><span class="file">termios.h</span></samp> (GNU):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B2400 -->
     <br><dt><code>B2400</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B300 -->
     <br><dt><code>B300</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B38400 -->
     <br><dt><code>B38400</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B460800 -->
     <br><dt><code>B460800</code><dd>
<samp><span class="file">termios.h</span></samp> (GNU):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B4800 -->
     <br><dt><code>B4800</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B50 -->
     <br><dt><code>B50</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B57600 -->
     <br><dt><code>B57600</code><dd>
<samp><span class="file">termios.h</span></samp> (GNU):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B600 -->
     <br><dt><code>B600</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B75 -->
     <br><dt><code>B75</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- B9600 -->
     <br><dt><code>B9600</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- backtrace -->
     <br><dt><code>int backtrace (void **</code><var>buffer</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">execinfo.h</span></samp> (GNU):  <a href="Backtraces.html#Backtraces">Backtraces</a>.

     <!-- backtrace_symbols -->
     <br><dt><code>char ** backtrace_symbols (void *const *</code><var>buffer</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">execinfo.h</span></samp> (GNU):  <a href="Backtraces.html#Backtraces">Backtraces</a>.

     <!-- backtrace_symbols_fd -->
     <br><dt><code>void backtrace_symbols_fd (void *const *</code><var>buffer</var><code>, int </code><var>size</var><code>, int </code><var>fd</var><code>)</code><dd>
<samp><span class="file">execinfo.h</span></samp> (GNU):  <a href="Backtraces.html#Backtraces">Backtraces</a>.

     <!-- basename -->
     <br><dt><code>char * basename (char *</code><var>path</var><code>)</code><dd>
<samp><span class="file">libgen.h</span></samp> (XPG):  <a href="Finding-Tokens-in-a-String.html#Finding-Tokens-in-a-String">Finding Tokens in a String</a>.

     <!-- basename -->
     <br><dt><code>char * basename (const char *</code><var>filename</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Finding-Tokens-in-a-String.html#Finding-Tokens-in-a-String">Finding Tokens in a String</a>.

     <!-- BC_BASE_MAX -->
     <br><dt><code>int BC_BASE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- BC_DIM_MAX -->
     <br><dt><code>int BC_DIM_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- bcmp -->
     <br><dt><code>int bcmp (const void *</code><var>a1</var><code>, const void *</code><var>a2</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- bcopy -->
     <br><dt><code>void bcopy (const void *</code><var>from</var><code>, void *</code><var>to</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- BC_SCALE_MAX -->
     <br><dt><code>int BC_SCALE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- BC_STRING_MAX -->
     <br><dt><code>int BC_STRING_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- bind -->
     <br><dt><code>int bind (int </code><var>socket</var><code>, struct sockaddr *</code><var>addr</var><code>, socklen_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Setting-Address.html#Setting-Address">Setting Address</a>.

     <!-- bindtextdomain -->
     <br><dt><code>char * bindtextdomain (const char *</code><var>domainname</var><code>, const char *</code><var>dirname</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Locating-gettext-catalog.html#Locating-gettext-catalog">Locating gettext catalog</a>.

     <!-- bind_textdomain_codeset -->
     <br><dt><code>char * bind_textdomain_codeset (const char *</code><var>domainname</var><code>, const char *</code><var>codeset</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Charset-conversion-in-gettext.html#Charset-conversion-in-gettext">Charset conversion in gettext</a>.

     <!-- blkcnt64_t -->
     <br><dt><code>blkcnt64_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (Unix98):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- blkcnt_t -->
     <br><dt><code>blkcnt_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (Unix98):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- BOOT_TIME -->
     <br><dt><code>BOOT_TIME</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- BOOT_TIME -->
     <br><dt><code>BOOT_TIME</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- brk -->
     <br><dt><code>int brk (void *</code><var>addr</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Resizing-the-Data-Segment.html#Resizing-the-Data-Segment">Resizing the Data Segment</a>.

     <!-- BRKINT -->
     <br><dt><code>tcflag_t BRKINT</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- _BSD_SOURCE -->
     <br><dt><code>_BSD_SOURCE</code><dd>
(GNU):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- bsearch -->
     <br><dt><code>void * bsearch (const void *</code><var>key</var><code>, const void *</code><var>array</var><code>, size_t </code><var>count</var><code>, size_t </code><var>size</var><code>, comparison_fn_t </code><var>compare</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Array-Search-Function.html#Array-Search-Function">Array Search Function</a>.

     <!-- btowc -->
     <br><dt><code>wint_t btowc (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Converting-a-Character.html#Converting-a-Character">Converting a Character</a>.

     <!-- BUFSIZ -->
     <br><dt><code>int BUFSIZ</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- bzero -->
     <br><dt><code>void bzero (void *</code><var>block</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- cabs -->
     <br><dt><code>double cabs (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- cabsf -->
     <br><dt><code>float cabsf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- cabsl -->
     <br><dt><code>long double cabsl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- cacos -->
     <br><dt><code>complex double cacos (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- cacosf -->
     <br><dt><code>complex float cacosf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- cacosh -->
     <br><dt><code>complex double cacosh (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- cacoshf -->
     <br><dt><code>complex float cacoshf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- cacoshl -->
     <br><dt><code>complex long double cacoshl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- cacosl -->
     <br><dt><code>complex long double cacosl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- calloc -->
     <br><dt><code>void * calloc (size_t </code><var>count</var><code>, size_t </code><var>eltsize</var><code>)</code><dd>
<samp><span class="file">malloc.h</span></samp>, <samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Allocating-Cleared-Space.html#Allocating-Cleared-Space">Allocating Cleared Space</a>.

     <!-- canonicalize_file_name -->
     <br><dt><code>char * canonicalize_file_name (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="Symbolic-Links.html#Symbolic-Links">Symbolic Links</a>.

     <!-- carg -->
     <br><dt><code>double carg (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- cargf -->
     <br><dt><code>float cargf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- cargl -->
     <br><dt><code>long double cargl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- casin -->
     <br><dt><code>complex double casin (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- casinf -->
     <br><dt><code>complex float casinf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- casinh -->
     <br><dt><code>complex double casinh (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- casinhf -->
     <br><dt><code>complex float casinhf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- casinhl -->
     <br><dt><code>complex long double casinhl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- casinl -->
     <br><dt><code>complex long double casinl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- catan -->
     <br><dt><code>complex double catan (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- catanf -->
     <br><dt><code>complex float catanf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- catanh -->
     <br><dt><code>complex double catanh (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- catanhf -->
     <br><dt><code>complex float catanhf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- catanhl -->
     <br><dt><code>complex long double catanhl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- catanl -->
     <br><dt><code>complex long double catanl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Inverse-Trig-Functions.html#Inverse-Trig-Functions">Inverse Trig Functions</a>.

     <!-- catopen -->
     <br><dt><code>nl_catd catopen (const char *</code><var>cat_name</var><code>, int </code><var>flag</var><code>)</code><dd>
<samp><span class="file">nl_types.h</span></samp> (X/Open):  <a href="The-catgets-Functions.html#The-catgets-Functions">The catgets Functions</a>.

     <!-- cbc_crypt -->
     <br><dt><code>int cbc_crypt (char *</code><var>key</var><code>, char *</code><var>blocks</var><code>, unsigned </code><var>len</var><code>, unsigned </code><var>mode</var><code>, char *</code><var>ivec</var><code>)</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- cbrt -->
     <br><dt><code>double cbrt (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cbrtf -->
     <br><dt><code>float cbrtf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cbrtl -->
     <br><dt><code>long double cbrtl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- ccos -->
     <br><dt><code>complex double ccos (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- ccosf -->
     <br><dt><code>complex float ccosf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- ccosh -->
     <br><dt><code>complex double ccosh (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- ccoshf -->
     <br><dt><code>complex float ccoshf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- ccoshl -->
     <br><dt><code>complex long double ccoshl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- ccosl -->
     <br><dt><code>complex long double ccosl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- cc_t -->
     <br><dt><code>cc_t</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Data-Types.html#Mode-Data-Types">Mode Data Types</a>.

     <!-- CCTS_OFLOW -->
     <br><dt><code>tcflag_t CCTS_OFLOW</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- ceil -->
     <br><dt><code>double ceil (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- ceilf -->
     <br><dt><code>float ceilf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- ceill -->
     <br><dt><code>long double ceill (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- cexp -->
     <br><dt><code>complex double cexp (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cexpf -->
     <br><dt><code>complex float cexpf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cexpl -->
     <br><dt><code>complex long double cexpl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cfgetispeed -->
     <br><dt><code>speed_t cfgetispeed (const struct termios *</code><var>termios-p</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- cfgetospeed -->
     <br><dt><code>speed_t cfgetospeed (const struct termios *</code><var>termios-p</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- cfmakeraw -->
     <br><dt><code>void cfmakeraw (struct termios *</code><var>termios-p</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Noncanonical-Input.html#Noncanonical-Input">Noncanonical Input</a>.

     <!-- cfree -->
     <br><dt><code>void cfree (void *</code><var>ptr</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (Sun):  <a href="Freeing-after-Malloc.html#Freeing-after-Malloc">Freeing after Malloc</a>.

     <!-- cfsetispeed -->
     <br><dt><code>int cfsetispeed (struct termios *</code><var>termios-p</var><code>, speed_t </code><var>speed</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- cfsetospeed -->
     <br><dt><code>int cfsetospeed (struct termios *</code><var>termios-p</var><code>, speed_t </code><var>speed</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- cfsetspeed -->
     <br><dt><code>int cfsetspeed (struct termios *</code><var>termios-p</var><code>, speed_t </code><var>speed</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- CHAR_BIT -->
     <br><dt><code>CHAR_BIT</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Width-of-Type.html#Width-of-Type">Width of Type</a>.

     <!-- CHAR_MAX -->
     <br><dt><code>CHAR_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- CHAR_MIN -->
     <br><dt><code>CHAR_MIN</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- chdir -->
     <br><dt><code>int chdir (const char *</code><var>filename</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Working-Directory.html#Working-Directory">Working Directory</a>.

     <!-- CHILD_MAX -->
     <br><dt><code>int CHILD_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- chmod -->
     <br><dt><code>int chmod (const char *</code><var>filename</var><code>, mode_t </code><var>mode</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Setting-Permissions.html#Setting-Permissions">Setting Permissions</a>.

     <!-- chown -->
     <br><dt><code>int chown (const char *</code><var>filename</var><code>, uid_t </code><var>owner</var><code>, gid_t </code><var>group</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="File-Owner.html#File-Owner">File Owner</a>.

     <!-- CIGNORE -->
     <br><dt><code>tcflag_t CIGNORE</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- cimag -->
     <br><dt><code>double cimag (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- cimagf -->
     <br><dt><code>float cimagf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- cimagl -->
     <br><dt><code>long double cimagl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- clearenv -->
     <br><dt><code>int clearenv (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="Environment-Access.html#Environment-Access">Environment Access</a>.

     <!-- clearerr -->
     <br><dt><code>void clearerr (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Error-Recovery.html#Error-Recovery">Error Recovery</a>.

     <!-- clearerr_unlocked -->
     <br><dt><code>void clearerr_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Error-Recovery.html#Error-Recovery">Error Recovery</a>.

     <!-- CLK_TCK -->
     <br><dt><code>int CLK_TCK</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1):  <a href="CPU-Time.html#CPU-Time">CPU Time</a>.

     <!-- CLOCAL -->
     <br><dt><code>tcflag_t CLOCAL</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- clock -->
     <br><dt><code>clock_t clock (void)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="CPU-Time.html#CPU-Time">CPU Time</a>.

     <!-- CLOCKS_PER_SEC -->
     <br><dt><code>int CLOCKS_PER_SEC</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="CPU-Time.html#CPU-Time">CPU Time</a>.

     <!-- clock_t -->
     <br><dt><code>clock_t</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="CPU-Time.html#CPU-Time">CPU Time</a>.

     <!-- clog -->
     <br><dt><code>complex double clog (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- clog10 -->
     <br><dt><code>complex double clog10 (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- clog10f -->
     <br><dt><code>complex float clog10f (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- clog10l -->
     <br><dt><code>complex long double clog10l (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- clogf -->
     <br><dt><code>complex float clogf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- clogl -->
     <br><dt><code>complex long double clogl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- close -->
     <br><dt><code>int close (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Opening-and-Closing-Files.html#Opening-and-Closing-Files">Opening and Closing Files</a>.

     <!-- closedir -->
     <br><dt><code>int closedir (DIR *</code><var>dirstream</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (POSIX.1):  <a href="Reading_002fClosing-Directory.html#Reading_002fClosing-Directory">Reading/Closing Directory</a>.

     <!-- closelog -->
     <br><dt><code>void closelog (void)</code><dd>
<samp><span class="file">syslog.h</span></samp> (BSD):  <a href="closelog.html#closelog">closelog</a>.

     <!-- COLL_WEIGHTS_MAX -->
     <br><dt><code>int COLL_WEIGHTS_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- confstr -->
     <br><dt><code>size_t confstr (int </code><var>parameter</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- conj -->
     <br><dt><code>complex double conj (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- conjf -->
     <br><dt><code>complex float conjf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- conjl -->
     <br><dt><code>complex long double conjl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- connect -->
     <br><dt><code>int connect (int </code><var>socket</var><code>, struct sockaddr *</code><var>addr</var><code>, socklen_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Connecting.html#Connecting">Connecting</a>.

     <!-- cookie_close_function -->
     <br><dt><code>cookie_close_function</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Hook-Functions.html#Hook-Functions">Hook Functions</a>.

     <!-- cookie_io_functions_t -->
     <br><dt><code>cookie_io_functions_t</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Streams-and-Cookies.html#Streams-and-Cookies">Streams and Cookies</a>.

     <!-- cookie_read_function -->
     <br><dt><code>cookie_read_function</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Hook-Functions.html#Hook-Functions">Hook Functions</a>.

     <!-- cookie_seek_function -->
     <br><dt><code>cookie_seek_function</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Hook-Functions.html#Hook-Functions">Hook Functions</a>.

     <!-- cookie_write_function -->
     <br><dt><code>cookie_write_function</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Hook-Functions.html#Hook-Functions">Hook Functions</a>.

     <!-- copysign -->
     <br><dt><code>double copysign (double </code><var>x</var><code>, double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- copysignf -->
     <br><dt><code>float copysignf (float </code><var>x</var><code>, float </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- copysignl -->
     <br><dt><code>long double copysignl (long double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- cos -->
     <br><dt><code>double cos (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- cosf -->
     <br><dt><code>float cosf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- cosh -->
     <br><dt><code>double cosh (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- coshf -->
     <br><dt><code>float coshf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- coshl -->
     <br><dt><code>long double coshl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- cosl -->
     <br><dt><code>long double cosl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- cpow -->
     <br><dt><code>complex double cpow (complex double </code><var>base</var><code>, complex double </code><var>power</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cpowf -->
     <br><dt><code>complex float cpowf (complex float </code><var>base</var><code>, complex float </code><var>power</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cpowl -->
     <br><dt><code>complex long double cpowl (complex long double </code><var>base</var><code>, complex long double </code><var>power</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- cproj -->
     <br><dt><code>complex double cproj (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- cprojf -->
     <br><dt><code>complex float cprojf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- cprojl -->
     <br><dt><code>complex long double cprojl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- CPU_CLR -->
     <br><dt><code>void CPU_CLR (int </code><var>cpu</var><code>, cpu_set_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- CPU_ISSET -->
     <br><dt><code>int CPU_ISSET (int </code><var>cpu</var><code>, const cpu_set_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- CPU_SET -->
     <br><dt><code>void CPU_SET (int </code><var>cpu</var><code>, cpu_set_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- CPU_SETSIZE -->
     <br><dt><code>int CPU_SETSIZE</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- cpu_set_t -->
     <br><dt><code>cpu_set_t</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- CPU_ZERO -->
     <br><dt><code>void CPU_ZERO (cpu_set_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- CREAD -->
     <br><dt><code>tcflag_t CREAD</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- creal -->
     <br><dt><code>double creal (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- crealf -->
     <br><dt><code>float crealf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- creall -->
     <br><dt><code>long double creall (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Operations-on-Complex.html#Operations-on-Complex">Operations on Complex</a>.

     <!-- creat -->
     <br><dt><code>int creat (const char *</code><var>filename</var><code>, mode_t </code><var>mode</var><code>)</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Opening-and-Closing-Files.html#Opening-and-Closing-Files">Opening and Closing Files</a>.

     <!-- creat64 -->
     <br><dt><code>int creat64 (const char *</code><var>filename</var><code>, mode_t </code><var>mode</var><code>)</code><dd>
<samp><span class="file">fcntl.h</span></samp> (Unix98):  <a href="Opening-and-Closing-Files.html#Opening-and-Closing-Files">Opening and Closing Files</a>.

     <!-- CRTS_IFLOW -->
     <br><dt><code>tcflag_t CRTS_IFLOW</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- crypt -->
     <br><dt><code>char * crypt (const char *</code><var>key</var><code>, const char *</code><var>salt</var><code>)</code><dd>
<samp><span class="file">crypt.h</span></samp> (BSD, SVID):  <a href="crypt.html#crypt">crypt</a>.

     <!-- crypt_r -->
     <br><dt><code>char * crypt_r (const char *</code><var>key</var><code>, const char *</code><var>salt</var><code>, struct crypt_data * </code><var>data</var><code>)</code><dd>
<samp><span class="file">crypt.h</span></samp> (GNU):  <a href="crypt.html#crypt">crypt</a>.

     <!-- CS5 -->
     <br><dt><code>tcflag_t CS5</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- CS6 -->
     <br><dt><code>tcflag_t CS6</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- CS7 -->
     <br><dt><code>tcflag_t CS7</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- CS8 -->
     <br><dt><code>tcflag_t CS8</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- csin -->
     <br><dt><code>complex double csin (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- csinf -->
     <br><dt><code>complex float csinf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- csinh -->
     <br><dt><code>complex double csinh (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- csinhf -->
     <br><dt><code>complex float csinhf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- csinhl -->
     <br><dt><code>complex long double csinhl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- csinl -->
     <br><dt><code>complex long double csinl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- CSIZE -->
     <br><dt><code>tcflag_t CSIZE</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- _CS_LFS64_CFLAGS -->
     <br><dt><code>_CS_LFS64_CFLAGS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_LFS64_LDFLAGS -->
     <br><dt><code>_CS_LFS64_LDFLAGS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_LFS64_LIBS -->
     <br><dt><code>_CS_LFS64_LIBS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_LFS64_LINTFLAGS -->
     <br><dt><code>_CS_LFS64_LINTFLAGS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_LFS_CFLAGS -->
     <br><dt><code>_CS_LFS_CFLAGS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_LFS_LDFLAGS -->
     <br><dt><code>_CS_LFS_LDFLAGS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_LFS_LIBS -->
     <br><dt><code>_CS_LFS_LIBS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_LFS_LINTFLAGS -->
     <br><dt><code>_CS_LFS_LINTFLAGS</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- _CS_PATH -->
     <br><dt><code>_CS_PATH</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="String-Parameters.html#String-Parameters">String Parameters</a>.

     <!-- csqrt -->
     <br><dt><code>complex double csqrt (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- csqrtf -->
     <br><dt><code>complex float csqrtf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- csqrtl -->
     <br><dt><code>complex long double csqrtl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- CSTOPB -->
     <br><dt><code>tcflag_t CSTOPB</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- ctan -->
     <br><dt><code>complex double ctan (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- ctanf -->
     <br><dt><code>complex float ctanf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- ctanh -->
     <br><dt><code>complex double ctanh (complex double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- ctanhf -->
     <br><dt><code>complex float ctanhf (complex float </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- ctanhl -->
     <br><dt><code>complex long double ctanhl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- ctanl -->
     <br><dt><code>complex long double ctanl (complex long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">complex.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- ctermid -->
     <br><dt><code>char * ctermid (char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.1):  <a href="Identifying-the-Terminal.html#Identifying-the-Terminal">Identifying the Terminal</a>.

     <!-- ctime -->
     <br><dt><code>char * ctime (const time_t *</code><var>time</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Formatting-Calendar-Time.html#Formatting-Calendar-Time">Formatting Calendar Time</a>.

     <!-- ctime_r -->
     <br><dt><code>char * ctime_r (const time_t *</code><var>time</var><code>, char *</code><var>buffer</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1c):  <a href="Formatting-Calendar-Time.html#Formatting-Calendar-Time">Formatting Calendar Time</a>.

     <!-- cuserid -->
     <br><dt><code>char * cuserid (char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.1):  <a href="Who-Logged-In.html#Who-Logged-In">Who Logged In</a>.

     <!-- daylight -->
     <br><dt><code>int daylight</code><dd>
<samp><span class="file">time.h</span></samp> (SVID):  <a href="Time-Zone-Functions.html#Time-Zone-Functions">Time Zone Functions</a>.

     <!-- DBL_DIG -->
     <br><dt><code>DBL_DIG</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_EPSILON -->
     <br><dt><code>DBL_EPSILON</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_MANT_DIG -->
     <br><dt><code>DBL_MANT_DIG</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_MAX -->
     <br><dt><code>DBL_MAX</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_MAX_10_EXP -->
     <br><dt><code>DBL_MAX_10_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_MAX_EXP -->
     <br><dt><code>DBL_MAX_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_MIN -->
     <br><dt><code>DBL_MIN</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_MIN_10_EXP -->
     <br><dt><code>DBL_MIN_10_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- DBL_MIN_EXP -->
     <br><dt><code>DBL_MIN_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- dcgettext -->
     <br><dt><code>char * dcgettext (const char *</code><var>domainname</var><code>, const char *</code><var>msgid</var><code>, int </code><var>category</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Translation-with-gettext.html#Translation-with-gettext">Translation with gettext</a>.

     <!-- dcngettext -->
     <br><dt><code>char * dcngettext (const char *</code><var>domain</var><code>, const char *</code><var>msgid1</var><code>, const char *</code><var>msgid2</var><code>, unsigned long int </code><var>n</var><code>, int </code><var>category</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Advanced-gettext-functions.html#Advanced-gettext-functions">Advanced gettext functions</a>.

     <!-- DEAD_PROCESS -->
     <br><dt><code>DEAD_PROCESS</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- DEAD_PROCESS -->
     <br><dt><code>DEAD_PROCESS</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- DES_DECRYPT -->
     <br><dt><code>DES_DECRYPT</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DES_ENCRYPT -->
     <br><dt><code>DES_ENCRYPT</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DESERR_BADPARAM -->
     <br><dt><code>DESERR_BADPARAM</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DESERR_HWERROR -->
     <br><dt><code>DESERR_HWERROR</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DESERR_NOHWDEVICE -->
     <br><dt><code>DESERR_NOHWDEVICE</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DESERR_NONE -->
     <br><dt><code>DESERR_NONE</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DES_FAILED -->
     <br><dt><code>int DES_FAILED (int </code><var>err</var><code>)</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DES_HW -->
     <br><dt><code>DES_HW</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- des_setparity -->
     <br><dt><code>void des_setparity (char *</code><var>key</var><code>)</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- DES_SW -->
     <br><dt><code>DES_SW</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- dev_t -->
     <br><dt><code>dev_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- dgettext -->
     <br><dt><code>char * dgettext (const char *</code><var>domainname</var><code>, const char *</code><var>msgid</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Translation-with-gettext.html#Translation-with-gettext">Translation with gettext</a>.

     <!-- difftime -->
     <br><dt><code>double difftime (time_t </code><var>time1</var><code>, time_t </code><var>time0</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Elapsed-Time.html#Elapsed-Time">Elapsed Time</a>.

     <!-- DIR -->
     <br><dt><code>DIR</code><dd>
<samp><span class="file">dirent.h</span></samp> (POSIX.1):  <a href="Opening-a-Directory.html#Opening-a-Directory">Opening a Directory</a>.

     <!-- dirfd -->
     <br><dt><code>int dirfd (DIR *</code><var>dirstream</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (GNU):  <a href="Opening-a-Directory.html#Opening-a-Directory">Opening a Directory</a>.

     <!-- dirname -->
     <br><dt><code>char * dirname (char *</code><var>path</var><code>)</code><dd>
<samp><span class="file">libgen.h</span></samp> (XPG):  <a href="Finding-Tokens-in-a-String.html#Finding-Tokens-in-a-String">Finding Tokens in a String</a>.

     <!-- div -->
     <br><dt><code>div_t div (int </code><var>numerator</var><code>, int </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- div_t -->
     <br><dt><code>div_t</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- dngettext -->
     <br><dt><code>char * dngettext (const char *</code><var>domain</var><code>, const char *</code><var>msgid1</var><code>, const char *</code><var>msgid2</var><code>, unsigned long int </code><var>n</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Advanced-gettext-functions.html#Advanced-gettext-functions">Advanced gettext functions</a>.

     <!-- drand48 -->
     <br><dt><code>double drand48 (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- drand48_r -->
     <br><dt><code>int drand48_r (struct drand48_data *</code><var>buffer</var><code>, double *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- drem -->
     <br><dt><code>double drem (double </code><var>numerator</var><code>, double </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- dremf -->
     <br><dt><code>float dremf (float </code><var>numerator</var><code>, float </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- dreml -->
     <br><dt><code>long double dreml (long double </code><var>numerator</var><code>, long double </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- DTTOIF -->
     <br><dt><code>mode_t DTTOIF (int </code><var>dtype</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (BSD):  <a href="Directory-Entries.html#Directory-Entries">Directory Entries</a>.

     <!-- dup -->
     <br><dt><code>int dup (int </code><var>old</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Duplicating-Descriptors.html#Duplicating-Descriptors">Duplicating Descriptors</a>.

     <!-- dup2 -->
     <br><dt><code>int dup2 (int </code><var>old</var><code>, int </code><var>new</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Duplicating-Descriptors.html#Duplicating-Descriptors">Duplicating Descriptors</a>.

     <!-- E2BIG -->
     <br><dt><code>int E2BIG</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Argument list too long):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EACCES -->
     <br><dt><code>int EACCES</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Permission denied):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EADDRINUSE -->
     <br><dt><code>int EADDRINUSE</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Address already in use):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EADDRNOTAVAIL -->
     <br><dt><code>int EADDRNOTAVAIL</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Cannot assign requested address):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EADV -->
     <br><dt><code>int EADV</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Advertise error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EAFNOSUPPORT -->
     <br><dt><code>int EAFNOSUPPORT</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Address family not supported by protocol):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EAGAIN -->
     <br><dt><code>int EAGAIN</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Resource temporarily unavailable):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EALREADY -->
     <br><dt><code>int EALREADY</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Operation already in progress):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EAUTH -->
     <br><dt><code>int EAUTH</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Authentication error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBACKGROUND -->
     <br><dt><code>int EBACKGROUND</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU: Inappropriate operation for background process):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADE -->
     <br><dt><code>int EBADE</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Invalid exchange):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADF -->
     <br><dt><code>int EBADF</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Bad file descriptor):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADFD -->
     <br><dt><code>int EBADFD</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: File descriptor in bad state):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADMSG -->
     <br><dt><code>int EBADMSG</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Bad message):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADR -->
     <br><dt><code>int EBADR</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Invalid request descriptor):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADRPC -->
     <br><dt><code>int EBADRPC</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: RPC struct is bad):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADRQC -->
     <br><dt><code>int EBADRQC</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Invalid request code):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBADSLT -->
     <br><dt><code>int EBADSLT</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Invalid slot):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBFONT -->
     <br><dt><code>int EBFONT</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Bad font file format):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EBUSY -->
     <br><dt><code>int EBUSY</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Device or resource busy):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ECANCELED -->
     <br><dt><code>int ECANCELED</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Operation canceled):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ecb_crypt -->
     <br><dt><code>int ecb_crypt (char *</code><var>key</var><code>, char *</code><var>blocks</var><code>, unsigned </code><var>len</var><code>, unsigned </code><var>mode</var><code>)</code><dd>
<samp><span class="file">rpc/des_crypt.h</span></samp> (SUNRPC):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- ECHILD -->
     <br><dt><code>int ECHILD</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: No child processes):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ECHO -->
     <br><dt><code>tcflag_t ECHO</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ECHOCTL -->
     <br><dt><code>tcflag_t ECHOCTL</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ECHOE -->
     <br><dt><code>tcflag_t ECHOE</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ECHOK -->
     <br><dt><code>tcflag_t ECHOK</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ECHOKE -->
     <br><dt><code>tcflag_t ECHOKE</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ECHONL -->
     <br><dt><code>tcflag_t ECHONL</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ECHOPRT -->
     <br><dt><code>tcflag_t ECHOPRT</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- ECHRNG -->
     <br><dt><code>int ECHRNG</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Channel number out of range):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ECOMM -->
     <br><dt><code>int ECOMM</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Communication error on send):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ECONNABORTED -->
     <br><dt><code>int ECONNABORTED</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Software caused connection abort):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ECONNREFUSED -->
     <br><dt><code>int ECONNREFUSED</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Connection refused):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ECONNRESET -->
     <br><dt><code>int ECONNRESET</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Connection reset by peer):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ecvt -->
     <br><dt><code>char * ecvt (double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID, Unix98):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- ecvt_r -->
     <br><dt><code>int ecvt_r (double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- ED -->
     <br><dt><code>int ED</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU: ?):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EDEADLK -->
     <br><dt><code>int EDEADLK</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Resource deadlock avoided):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EDEADLOCK -->
     <br><dt><code>int EDEADLOCK</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: File locking deadlock error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EDESTADDRREQ -->
     <br><dt><code>int EDESTADDRREQ</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Destination address required):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EDIED -->
     <br><dt><code>int EDIED</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU: Translator died):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EDOM -->
     <br><dt><code>int EDOM</code><dd>
<samp><span class="file">errno.h</span></samp> (ISO: Numerical argument out of domain):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EDOTDOT -->
     <br><dt><code>int EDOTDOT</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: RFS specific error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EDQUOT -->
     <br><dt><code>int EDQUOT</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Disk quota exceeded):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EEXIST -->
     <br><dt><code>int EEXIST</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: File exists):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EFAULT -->
     <br><dt><code>int EFAULT</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Bad address):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EFBIG -->
     <br><dt><code>int EFBIG</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: File too large):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EFTYPE -->
     <br><dt><code>int EFTYPE</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Inappropriate file type or format):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EGRATUITOUS -->
     <br><dt><code>int EGRATUITOUS</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU: Gratuitous error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EGREGIOUS -->
     <br><dt><code>int EGREGIOUS</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU: You really blew it this time):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EHOSTDOWN -->
     <br><dt><code>int EHOSTDOWN</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Host is down):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EHOSTUNREACH -->
     <br><dt><code>int EHOSTUNREACH</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: No route to host):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EIDRM -->
     <br><dt><code>int EIDRM</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Identifier removed):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EIEIO -->
     <br><dt><code>int EIEIO</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU: Computer bought the farm):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EILSEQ -->
     <br><dt><code>int EILSEQ</code><dd>
<samp><span class="file">errno.h</span></samp> (ISO: Invalid or incomplete multibyte or wide character):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EINPROGRESS -->
     <br><dt><code>int EINPROGRESS</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Operation now in progress):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EINTR -->
     <br><dt><code>int EINTR</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Interrupted system call):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EINVAL -->
     <br><dt><code>int EINVAL</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Invalid argument):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EIO -->
     <br><dt><code>int EIO</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Input/output error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EISCONN -->
     <br><dt><code>int EISCONN</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Transport endpoint is already connected):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EISDIR -->
     <br><dt><code>int EISDIR</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Is a directory):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EISNAM -->
     <br><dt><code>int EISNAM</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Is a named type file):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EKEYEXPIRED -->
     <br><dt><code>int EKEYEXPIRED</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux: Key has expired):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EKEYREJECTED -->
     <br><dt><code>int EKEYREJECTED</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux: Key was rejected by service):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EKEYREVOKED -->
     <br><dt><code>int EKEYREVOKED</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux: Key has been revoked):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EL2HLT -->
     <br><dt><code>int EL2HLT</code><dd>
<samp><span class="file">errno.h</span></samp> (Obsolete: Level 2 halted):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EL2NSYNC -->
     <br><dt><code>int EL2NSYNC</code><dd>
<samp><span class="file">errno.h</span></samp> (Obsolete: Level 2 not synchronized):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EL3HLT -->
     <br><dt><code>int EL3HLT</code><dd>
<samp><span class="file">errno.h</span></samp> (Obsolete: Level 3 halted):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EL3RST -->
     <br><dt><code>int EL3RST</code><dd>
<samp><span class="file">errno.h</span></samp> (Obsolete: Level 3 reset):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ELIBACC -->
     <br><dt><code>int ELIBACC</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Can not access a needed shared library):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ELIBBAD -->
     <br><dt><code>int ELIBBAD</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Accessing a corrupted shared library):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ELIBEXEC -->
     <br><dt><code>int ELIBEXEC</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Cannot exec a shared library directly):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ELIBMAX -->
     <br><dt><code>int ELIBMAX</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Attempting to link in too many shared libraries):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ELIBSCN -->
     <br><dt><code>int ELIBSCN</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: .lib section in a.out corrupted):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ELNRNG -->
     <br><dt><code>int ELNRNG</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Link number out of range):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ELOOP -->
     <br><dt><code>int ELOOP</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Too many levels of symbolic links):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EMEDIUMTYPE -->
     <br><dt><code>int EMEDIUMTYPE</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Wrong medium type):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EMFILE -->
     <br><dt><code>int EMFILE</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Too many open files):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EMLINK -->
     <br><dt><code>int EMLINK</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Too many links):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EMPTY -->
     <br><dt><code>EMPTY</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- EMPTY -->
     <br><dt><code>EMPTY</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- EMSGSIZE -->
     <br><dt><code>int EMSGSIZE</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Message too long):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EMULTIHOP -->
     <br><dt><code>int EMULTIHOP</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Multihop attempted):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENAMETOOLONG -->
     <br><dt><code>int ENAMETOOLONG</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: File name too long):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENAVAIL -->
     <br><dt><code>int ENAVAIL</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: No XENIX semaphores available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- encrypt -->
     <br><dt><code>void encrypt (char *</code><var>block</var><code>, int </code><var>edflag</var><code>)</code><dd>
<samp><span class="file">crypt.h</span></samp> (BSD, SVID):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- encrypt_r -->
     <br><dt><code>void encrypt_r (char *</code><var>block</var><code>, int </code><var>edflag</var><code>, struct crypt_data * </code><var>data</var><code>)</code><dd>
<samp><span class="file">crypt.h</span></samp> (GNU):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- endfsent -->
     <br><dt><code>void endfsent (void)</code><dd>
<samp><span class="file">fstab.h</span></samp> (BSD):  <a href="fstab.html#fstab">fstab</a>.

     <!-- endgrent -->
     <br><dt><code>void endgrent (void)</code><dd>
<samp><span class="file">grp.h</span></samp> (SVID, BSD):  <a href="Scanning-All-Groups.html#Scanning-All-Groups">Scanning All Groups</a>.

     <!-- endhostent -->
     <br><dt><code>void endhostent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- endmntent -->
     <br><dt><code>int endmntent (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">mntent.h</span></samp> (BSD):  <a href="mtab.html#mtab">mtab</a>.

     <!-- endnetent -->
     <br><dt><code>void endnetent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Networks-Database.html#Networks-Database">Networks Database</a>.

     <!-- endnetgrent -->
     <br><dt><code>void endnetgrent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Lookup-Netgroup.html#Lookup-Netgroup">Lookup Netgroup</a>.

     <!-- endprotoent -->
     <br><dt><code>void endprotoent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Protocols-Database.html#Protocols-Database">Protocols Database</a>.

     <!-- endpwent -->
     <br><dt><code>void endpwent (void)</code><dd>
<samp><span class="file">pwd.h</span></samp> (SVID, BSD):  <a href="Scanning-All-Users.html#Scanning-All-Users">Scanning All Users</a>.

     <!-- endservent -->
     <br><dt><code>void endservent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Services-Database.html#Services-Database">Services Database</a>.

     <!-- endutent -->
     <br><dt><code>void endutent (void)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- endutxent -->
     <br><dt><code>void endutxent (void)</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- ENEEDAUTH -->
     <br><dt><code>int ENEEDAUTH</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Need authenticator):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENETDOWN -->
     <br><dt><code>int ENETDOWN</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Network is down):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENETRESET -->
     <br><dt><code>int ENETRESET</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Network dropped connection on reset):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENETUNREACH -->
     <br><dt><code>int ENETUNREACH</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Network is unreachable):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENFILE -->
     <br><dt><code>int ENFILE</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Too many open files in system):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOANO -->
     <br><dt><code>int ENOANO</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: No anode):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOBUFS -->
     <br><dt><code>int ENOBUFS</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: No buffer space available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOCSI -->
     <br><dt><code>int ENOCSI</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: No CSI structure available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENODATA -->
     <br><dt><code>int ENODATA</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: No data available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENODEV -->
     <br><dt><code>int ENODEV</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: No such device):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOENT -->
     <br><dt><code>int ENOENT</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: No such file or directory):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOEXEC -->
     <br><dt><code>int ENOEXEC</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Exec format error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOKEY -->
     <br><dt><code>int ENOKEY</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux: Required key not available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOLCK -->
     <br><dt><code>int ENOLCK</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: No locks available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOLINK -->
     <br><dt><code>int ENOLINK</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Link has been severed):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOMEDIUM -->
     <br><dt><code>int ENOMEDIUM</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: No medium found):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOMEM -->
     <br><dt><code>int ENOMEM</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Cannot allocate memory):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOMSG -->
     <br><dt><code>int ENOMSG</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: No message of desired type):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENONET -->
     <br><dt><code>int ENONET</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Machine is not on the network):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOPKG -->
     <br><dt><code>int ENOPKG</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Package not installed):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOPROTOOPT -->
     <br><dt><code>int ENOPROTOOPT</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Protocol not available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOSPC -->
     <br><dt><code>int ENOSPC</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: No space left on device):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOSR -->
     <br><dt><code>int ENOSR</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Out of streams resources):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOSTR -->
     <br><dt><code>int ENOSTR</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Device not a stream):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOSYS -->
     <br><dt><code>int ENOSYS</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Function not implemented):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTBLK -->
     <br><dt><code>int ENOTBLK</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Block device required):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTCONN -->
     <br><dt><code>int ENOTCONN</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Transport endpoint is not connected):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTDIR -->
     <br><dt><code>int ENOTDIR</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Not a directory):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTEMPTY -->
     <br><dt><code>int ENOTEMPTY</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Directory not empty):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTNAM -->
     <br><dt><code>int ENOTNAM</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Not a XENIX named type file):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTRECOVERABLE -->
     <br><dt><code>int ENOTRECOVERABLE</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux: State not recoverable):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTSOCK -->
     <br><dt><code>int ENOTSOCK</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Socket operation on non-socket):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTSUP -->
     <br><dt><code>int ENOTSUP</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Not supported):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTTY -->
     <br><dt><code>int ENOTTY</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Inappropriate ioctl for device):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ENOTUNIQ -->
     <br><dt><code>int ENOTUNIQ</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Name not unique on network):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- environ -->
     <br><dt><code>char ** environ</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Environment-Access.html#Environment-Access">Environment Access</a>.

     <!-- envz_add -->
     <br><dt><code>error_t envz_add (char **</code><var>envz</var><code>, size_t *</code><var>envz_len</var><code>, const char *</code><var>name</var><code>, const char *</code><var>value</var><code>)</code><dd>
<samp><span class="file">envz.h</span></samp> (GNU):  <a href="Envz-Functions.html#Envz-Functions">Envz Functions</a>.

     <!-- envz_entry -->
     <br><dt><code>char * envz_entry (const char *</code><var>envz</var><code>, size_t </code><var>envz_len</var><code>, const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">envz.h</span></samp> (GNU):  <a href="Envz-Functions.html#Envz-Functions">Envz Functions</a>.

     <!-- envz_get -->
     <br><dt><code>char * envz_get (const char *</code><var>envz</var><code>, size_t </code><var>envz_len</var><code>, const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">envz.h</span></samp> (GNU):  <a href="Envz-Functions.html#Envz-Functions">Envz Functions</a>.

     <!-- envz_merge -->
     <br><dt><code>error_t envz_merge (char **</code><var>envz</var><code>, size_t *</code><var>envz_len</var><code>, const char *</code><var>envz2</var><code>, size_t </code><var>envz2_len</var><code>, int </code><var>override</var><code>)</code><dd>
<samp><span class="file">envz.h</span></samp> (GNU):  <a href="Envz-Functions.html#Envz-Functions">Envz Functions</a>.

     <!-- envz_strip -->
     <br><dt><code>void envz_strip (char **</code><var>envz</var><code>, size_t *</code><var>envz_len</var><code>)</code><dd>
<samp><span class="file">envz.h</span></samp> (GNU):  <a href="Envz-Functions.html#Envz-Functions">Envz Functions</a>.

     <!-- ENXIO -->
     <br><dt><code>int ENXIO</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: No such device or address):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EOF -->
     <br><dt><code>int EOF</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="EOF-and-Errors.html#EOF-and-Errors">EOF and Errors</a>.

     <!-- EOPNOTSUPP -->
     <br><dt><code>int EOPNOTSUPP</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Operation not supported):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EOVERFLOW -->
     <br><dt><code>int EOVERFLOW</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Value too large for defined data type):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EOWNERDEAD -->
     <br><dt><code>int EOWNERDEAD</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux: Owner died):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPERM -->
     <br><dt><code>int EPERM</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Operation not permitted):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPFNOSUPPORT -->
     <br><dt><code>int EPFNOSUPPORT</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Protocol family not supported):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPIPE -->
     <br><dt><code>int EPIPE</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Broken pipe):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPROCLIM -->
     <br><dt><code>int EPROCLIM</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Too many processes):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPROCUNAVAIL -->
     <br><dt><code>int EPROCUNAVAIL</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: RPC bad procedure for program):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPROGMISMATCH -->
     <br><dt><code>int EPROGMISMATCH</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: RPC program version wrong):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPROGUNAVAIL -->
     <br><dt><code>int EPROGUNAVAIL</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: RPC program not available):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPROTO -->
     <br><dt><code>int EPROTO</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Protocol error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPROTONOSUPPORT -->
     <br><dt><code>int EPROTONOSUPPORT</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Protocol not supported):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EPROTOTYPE -->
     <br><dt><code>int EPROTOTYPE</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Protocol wrong type for socket):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EQUIV_CLASS_MAX -->
     <br><dt><code>int EQUIV_CLASS_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- erand48 -->
     <br><dt><code>double erand48 (unsigned short int </code><var>xsubi</var><code>[3])</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- erand48_r -->
     <br><dt><code>int erand48_r (unsigned short int </code><var>xsubi</var><code>[3], struct drand48_data *</code><var>buffer</var><code>, double *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- ERANGE -->
     <br><dt><code>int ERANGE</code><dd>
<samp><span class="file">errno.h</span></samp> (ISO: Numerical result out of range):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EREMCHG -->
     <br><dt><code>int EREMCHG</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Remote address changed):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EREMOTE -->
     <br><dt><code>int EREMOTE</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Object is remote):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EREMOTEIO -->
     <br><dt><code>int EREMOTEIO</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Remote I/O error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ERESTART -->
     <br><dt><code>int ERESTART</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Interrupted system call should be restarted):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- erf -->
     <br><dt><code>double erf (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- erfc -->
     <br><dt><code>double erfc (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- erfcf -->
     <br><dt><code>float erfcf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- erfcl -->
     <br><dt><code>long double erfcl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- erff -->
     <br><dt><code>float erff (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- ERFKILL -->
     <br><dt><code>int ERFKILL</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux: Operation not possible due to RF-kill):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- erfl -->
     <br><dt><code>long double erfl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- EROFS -->
     <br><dt><code>int EROFS</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Read-only file system):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ERPCMISMATCH -->
     <br><dt><code>int ERPCMISMATCH</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: RPC version wrong):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- err -->
     <br><dt><code>void err (int </code><var>status</var><code>, const char *</code><var>format</var><code>, ...)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- errno -->
     <br><dt><code>volatile int errno</code><dd>
<samp><span class="file">errno.h</span></samp> (ISO):  <a href="Checking-for-Errors.html#Checking-for-Errors">Checking for Errors</a>.

     <!-- error -->
     <br><dt><code>void error (int </code><var>status</var><code>, int </code><var>errnum</var><code>, const char *</code><var>format</var><code>, ...)</code><dd>
<samp><span class="file">error.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- error_at_line -->
     <br><dt><code>void error_at_line (int </code><var>status</var><code>, int </code><var>errnum</var><code>, const char *</code><var>fname</var><code>, unsigned int </code><var>lineno</var><code>, const char *</code><var>format</var><code>, ...)</code><dd>
<samp><span class="file">error.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- error_message_count -->
     <br><dt><code>unsigned int error_message_count</code><dd>
<samp><span class="file">error.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- error_one_per_line -->
     <br><dt><code>int error_one_per_line</code><dd>
<samp><span class="file">error.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- errx -->
     <br><dt><code>void errx (int </code><var>status</var><code>, const char *</code><var>format</var><code>, ...)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- ESHUTDOWN -->
     <br><dt><code>int ESHUTDOWN</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Cannot send after transport endpoint shutdown):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ESOCKTNOSUPPORT -->
     <br><dt><code>int ESOCKTNOSUPPORT</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Socket type not supported):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ESPIPE -->
     <br><dt><code>int ESPIPE</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Illegal seek):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ESRCH -->
     <br><dt><code>int ESRCH</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: No such process):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ESRMNT -->
     <br><dt><code>int ESRMNT</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Srmount error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ESTALE -->
     <br><dt><code>int ESTALE</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Stale NFS file handle):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ESTRPIPE -->
     <br><dt><code>int ESTRPIPE</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Streams pipe error):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ETIME -->
     <br><dt><code>int ETIME</code><dd>
<samp><span class="file">errno.h</span></samp> (XOPEN: Timer expired):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ETIMEDOUT -->
     <br><dt><code>int ETIMEDOUT</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Connection timed out):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ETOOMANYREFS -->
     <br><dt><code>int ETOOMANYREFS</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Too many references: cannot splice):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- ETXTBSY -->
     <br><dt><code>int ETXTBSY</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Text file busy):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EUCLEAN -->
     <br><dt><code>int EUCLEAN</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Structure needs cleaning):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EUNATCH -->
     <br><dt><code>int EUNATCH</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Protocol driver not attached):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EUSERS -->
     <br><dt><code>int EUSERS</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Too many users):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EWOULDBLOCK -->
     <br><dt><code>int EWOULDBLOCK</code><dd>
<samp><span class="file">errno.h</span></samp> (BSD: Operation would block):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- EXDEV -->
     <br><dt><code>int EXDEV</code><dd>
<samp><span class="file">errno.h</span></samp> (POSIX.1: Invalid cross-device link):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- execl -->
     <br><dt><code>int execl (const char *</code><var>filename</var><code>, const char *</code><var>arg0</var><code>, ...)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Executing-a-File.html#Executing-a-File">Executing a File</a>.

     <!-- execle -->
     <br><dt><code>int execle (const char *</code><var>filename</var><code>, const char *</code><var>arg0</var><code>, char *const </code><var>env</var><tt>[]</tt><code>, ...)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Executing-a-File.html#Executing-a-File">Executing a File</a>.

     <!-- execlp -->
     <br><dt><code>int execlp (const char *</code><var>filename</var><code>, const char *</code><var>arg0</var><code>, ...)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Executing-a-File.html#Executing-a-File">Executing a File</a>.

     <!-- execv -->
     <br><dt><code>int execv (const char *</code><var>filename</var><code>, char *const </code><var>argv</var><tt>[]</tt><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Executing-a-File.html#Executing-a-File">Executing a File</a>.

     <!-- execve -->
     <br><dt><code>int execve (const char *</code><var>filename</var><code>, char *const </code><var>argv</var><tt>[]</tt><code>, char *const </code><var>env</var><tt>[]</tt><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Executing-a-File.html#Executing-a-File">Executing a File</a>.

     <!-- execvp -->
     <br><dt><code>int execvp (const char *</code><var>filename</var><code>, char *const </code><var>argv</var><tt>[]</tt><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Executing-a-File.html#Executing-a-File">Executing a File</a>.

     <!-- EXFULL -->
     <br><dt><code>int EXFULL</code><dd>
<samp><span class="file">errno.h</span></samp> (Linux???: Exchange full):  <a href="Error-Codes.html#Error-Codes">Error Codes</a>.

     <!-- _Exit -->
     <br><dt><code>void _Exit (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Termination-Internals.html#Termination-Internals">Termination Internals</a>.

     <!-- _exit -->
     <br><dt><code>void _exit (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Termination-Internals.html#Termination-Internals">Termination Internals</a>.

     <!-- exit -->
     <br><dt><code>void exit (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Normal-Termination.html#Normal-Termination">Normal Termination</a>.

     <!-- EXIT_FAILURE -->
     <br><dt><code>int EXIT_FAILURE</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Exit-Status.html#Exit-Status">Exit Status</a>.

     <!-- EXIT_SUCCESS -->
     <br><dt><code>int EXIT_SUCCESS</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Exit-Status.html#Exit-Status">Exit Status</a>.

     <!-- exp -->
     <br><dt><code>double exp (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- exp10 -->
     <br><dt><code>double exp10 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- exp10f -->
     <br><dt><code>float exp10f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- exp10l -->
     <br><dt><code>long double exp10l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- exp2 -->
     <br><dt><code>double exp2 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- exp2f -->
     <br><dt><code>float exp2f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- exp2l -->
     <br><dt><code>long double exp2l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- expf -->
     <br><dt><code>float expf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- expl -->
     <br><dt><code>long double expl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- expm1 -->
     <br><dt><code>double expm1 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- expm1f -->
     <br><dt><code>float expm1f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- expm1l -->
     <br><dt><code>long double expm1l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- EXPR_NEST_MAX -->
     <br><dt><code>int EXPR_NEST_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- fabs -->
     <br><dt><code>double fabs (double </code><var>number</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- fabsf -->
     <br><dt><code>float fabsf (float </code><var>number</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- fabsl -->
     <br><dt><code>long double fabsl (long double </code><var>number</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- __fbufsize -->
     <br><dt><code>size_t __fbufsize (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- fchdir -->
     <br><dt><code>int fchdir (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (XPG):  <a href="Working-Directory.html#Working-Directory">Working Directory</a>.

     <!-- fchmod -->
     <br><dt><code>int fchmod (int </code><var>filedes</var><code>, int </code><var>mode</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Setting-Permissions.html#Setting-Permissions">Setting Permissions</a>.

     <!-- fchown -->
     <br><dt><code>int fchown (int </code><var>filedes</var><code>, int </code><var>owner</var><code>, int </code><var>group</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="File-Owner.html#File-Owner">File Owner</a>.

     <!-- fclean -->
     <br><dt><code>int fclean (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Cleaning-Streams.html#Cleaning-Streams">Cleaning Streams</a>.

     <!-- fclose -->
     <br><dt><code>int fclose (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Closing-Streams.html#Closing-Streams">Closing Streams</a>.

     <!-- fcloseall -->
     <br><dt><code>int fcloseall (void)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Closing-Streams.html#Closing-Streams">Closing Streams</a>.

     <!-- fcntl -->
     <br><dt><code>int fcntl (int </code><var>filedes</var><code>, int </code><var>command</var><code>, ...)</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Control-Operations.html#Control-Operations">Control Operations</a>.

     <!-- fcvt -->
     <br><dt><code>char * fcvt (double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID, Unix98):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- fcvt_r -->
     <br><dt><code>int fcvt_r (double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID, Unix98):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- fdatasync -->
     <br><dt><code>int fdatasync (int </code><var>fildes</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX):  <a href="Synchronizing-I_002fO.html#Synchronizing-I_002fO">Synchronizing I/O</a>.

     <!-- FD_CLOEXEC -->
     <br><dt><code>int FD_CLOEXEC</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Descriptor-Flags.html#Descriptor-Flags">Descriptor Flags</a>.

     <!-- FD_CLR -->
     <br><dt><code>void FD_CLR (int </code><var>filedes</var><code>, fd_set *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sys/types.h</span></samp> (BSD):  <a href="Waiting-for-I_002fO.html#Waiting-for-I_002fO">Waiting for I/O</a>.

     <!-- fdim -->
     <br><dt><code>double fdim (double </code><var>x</var><code>, double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fdimf -->
     <br><dt><code>float fdimf (float </code><var>x</var><code>, float </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fdiml -->
     <br><dt><code>long double fdiml (long double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- FD_ISSET -->
     <br><dt><code>int FD_ISSET (int </code><var>filedes</var><code>, const fd_set *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sys/types.h</span></samp> (BSD):  <a href="Waiting-for-I_002fO.html#Waiting-for-I_002fO">Waiting for I/O</a>.

     <!-- fdopen -->
     <br><dt><code>FILE * fdopen (int </code><var>filedes</var><code>, const char *</code><var>opentype</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.1):  <a href="Descriptors-and-Streams.html#Descriptors-and-Streams">Descriptors and Streams</a>.

     <!-- fdopendir -->
     <br><dt><code>DIR * fdopendir (int </code><var>fd</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (GNU):  <a href="Opening-a-Directory.html#Opening-a-Directory">Opening a Directory</a>.

     <!-- FD_SET -->
     <br><dt><code>void FD_SET (int </code><var>filedes</var><code>, fd_set *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sys/types.h</span></samp> (BSD):  <a href="Waiting-for-I_002fO.html#Waiting-for-I_002fO">Waiting for I/O</a>.

     <!-- fd_set -->
     <br><dt><code>fd_set</code><dd>
<samp><span class="file">sys/types.h</span></samp> (BSD):  <a href="Waiting-for-I_002fO.html#Waiting-for-I_002fO">Waiting for I/O</a>.

     <!-- FD_SETSIZE -->
     <br><dt><code>int FD_SETSIZE</code><dd>
<samp><span class="file">sys/types.h</span></samp> (BSD):  <a href="Waiting-for-I_002fO.html#Waiting-for-I_002fO">Waiting for I/O</a>.

     <!-- F_DUPFD -->
     <br><dt><code>int F_DUPFD</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Duplicating-Descriptors.html#Duplicating-Descriptors">Duplicating Descriptors</a>.

     <!-- FD_ZERO -->
     <br><dt><code>void FD_ZERO (fd_set *</code><var>set</var><code>)</code><dd>
<samp><span class="file">sys/types.h</span></samp> (BSD):  <a href="Waiting-for-I_002fO.html#Waiting-for-I_002fO">Waiting for I/O</a>.

     <!-- feclearexcept -->
     <br><dt><code>int feclearexcept (int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- fedisableexcept -->
     <br><dt><code>int fedisableexcept (int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (GNU):  <a href="Control-Functions.html#Control-Functions">Control Functions</a>.

     <!-- FE_DIVBYZERO -->
     <br><dt><code>FE_DIVBYZERO</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- FE_DOWNWARD -->
     <br><dt><code>FE_DOWNWARD</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Rounding.html#Rounding">Rounding</a>.

     <!-- feenableexcept -->
     <br><dt><code>int feenableexcept (int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (GNU):  <a href="Control-Functions.html#Control-Functions">Control Functions</a>.

     <!-- fegetenv -->
     <br><dt><code>int fegetenv (fenv_t *</code><var>envp</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Control-Functions.html#Control-Functions">Control Functions</a>.

     <!-- fegetexcept -->
     <br><dt><code>int fegetexcept (int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (GNU):  <a href="Control-Functions.html#Control-Functions">Control Functions</a>.

     <!-- fegetexceptflag -->
     <br><dt><code>int fegetexceptflag (fexcept_t *</code><var>flagp</var><code>, int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- fegetround -->
     <br><dt><code>int fegetround (void)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Rounding.html#Rounding">Rounding</a>.

     <!-- feholdexcept -->
     <br><dt><code>int feholdexcept (fenv_t *</code><var>envp</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Control-Functions.html#Control-Functions">Control Functions</a>.

     <!-- FE_INEXACT -->
     <br><dt><code>FE_INEXACT</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- FE_INVALID -->
     <br><dt><code>FE_INVALID</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- feof -->
     <br><dt><code>int feof (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="EOF-and-Errors.html#EOF-and-Errors">EOF and Errors</a>.

     <!-- feof_unlocked -->
     <br><dt><code>int feof_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="EOF-and-Errors.html#EOF-and-Errors">EOF and Errors</a>.

     <!-- FE_OVERFLOW -->
     <br><dt><code>FE_OVERFLOW</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- feraiseexcept -->
     <br><dt><code>int feraiseexcept (int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- ferror -->
     <br><dt><code>int ferror (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="EOF-and-Errors.html#EOF-and-Errors">EOF and Errors</a>.

     <!-- ferror_unlocked -->
     <br><dt><code>int ferror_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="EOF-and-Errors.html#EOF-and-Errors">EOF and Errors</a>.

     <!-- fesetenv -->
     <br><dt><code>int fesetenv (const fenv_t *</code><var>envp</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Control-Functions.html#Control-Functions">Control Functions</a>.

     <!-- fesetexceptflag -->
     <br><dt><code>int fesetexceptflag (const fexcept_t *</code><var>flagp</var><code>, int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- fesetround -->
     <br><dt><code>int fesetround (int </code><var>round</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Rounding.html#Rounding">Rounding</a>.

     <!-- fetestexcept -->
     <br><dt><code>int fetestexcept (int </code><var>excepts</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- FE_TONEAREST -->
     <br><dt><code>FE_TONEAREST</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Rounding.html#Rounding">Rounding</a>.

     <!-- FE_TOWARDZERO -->
     <br><dt><code>FE_TOWARDZERO</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Rounding.html#Rounding">Rounding</a>.

     <!-- FE_UNDERFLOW -->
     <br><dt><code>FE_UNDERFLOW</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Status-bit-operations.html#Status-bit-operations">Status bit operations</a>.

     <!-- feupdateenv -->
     <br><dt><code>int feupdateenv (const fenv_t *</code><var>envp</var><code>)</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Control-Functions.html#Control-Functions">Control Functions</a>.

     <!-- FE_UPWARD -->
     <br><dt><code>FE_UPWARD</code><dd>
<samp><span class="file">fenv.h</span></samp> (ISO):  <a href="Rounding.html#Rounding">Rounding</a>.

     <!-- fflush -->
     <br><dt><code>int fflush (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Flushing-Buffers.html#Flushing-Buffers">Flushing Buffers</a>.

     <!-- fflush_unlocked -->
     <br><dt><code>int fflush_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Flushing-Buffers.html#Flushing-Buffers">Flushing Buffers</a>.

     <!-- fgetc -->
     <br><dt><code>int fgetc (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- fgetc_unlocked -->
     <br><dt><code>int fgetc_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- F_GETFD -->
     <br><dt><code>int F_GETFD</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Descriptor-Flags.html#Descriptor-Flags">Descriptor Flags</a>.

     <!-- F_GETFL -->
     <br><dt><code>int F_GETFL</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Getting-File-Status-Flags.html#Getting-File-Status-Flags">Getting File Status Flags</a>.

     <!-- fgetgrent -->
     <br><dt><code>struct group * fgetgrent (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (SVID):  <a href="Scanning-All-Groups.html#Scanning-All-Groups">Scanning All Groups</a>.

     <!-- fgetgrent_r -->
     <br><dt><code>int fgetgrent_r (FILE *</code><var>stream</var><code>, struct group *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>buflen</var><code>, struct group **</code><var>result</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (GNU):  <a href="Scanning-All-Groups.html#Scanning-All-Groups">Scanning All Groups</a>.

     <!-- F_GETLK -->
     <br><dt><code>int F_GETLK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="File-Locks.html#File-Locks">File Locks</a>.

     <!-- F_GETOWN -->
     <br><dt><code>int F_GETOWN</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Interrupt-Input.html#Interrupt-Input">Interrupt Input</a>.

     <!-- fgetpos -->
     <br><dt><code>int fgetpos (FILE *</code><var>stream</var><code>, fpos_t *</code><var>position</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Portable-Positioning.html#Portable-Positioning">Portable Positioning</a>.

     <!-- fgetpos64 -->
     <br><dt><code>int fgetpos64 (FILE *</code><var>stream</var><code>, fpos64_t *</code><var>position</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="Portable-Positioning.html#Portable-Positioning">Portable Positioning</a>.

     <!-- fgetpwent -->
     <br><dt><code>struct passwd * fgetpwent (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (SVID):  <a href="Scanning-All-Users.html#Scanning-All-Users">Scanning All Users</a>.

     <!-- fgetpwent_r -->
     <br><dt><code>int fgetpwent_r (FILE *</code><var>stream</var><code>, struct passwd *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>buflen</var><code>, struct passwd **</code><var>result</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (GNU):  <a href="Scanning-All-Users.html#Scanning-All-Users">Scanning All Users</a>.

     <!-- fgets -->
     <br><dt><code>char * fgets (char *</code><var>s</var><code>, int </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Line-Input.html#Line-Input">Line Input</a>.

     <!-- fgets_unlocked -->
     <br><dt><code>char * fgets_unlocked (char *</code><var>s</var><code>, int </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Line-Input.html#Line-Input">Line Input</a>.

     <!-- fgetwc -->
     <br><dt><code>wint_t fgetwc (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- fgetwc_unlocked -->
     <br><dt><code>wint_t fgetwc_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- fgetws -->
     <br><dt><code>wchar_t * fgetws (wchar_t *</code><var>ws</var><code>, int </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Line-Input.html#Line-Input">Line Input</a>.

     <!-- fgetws_unlocked -->
     <br><dt><code>wchar_t * fgetws_unlocked (wchar_t *</code><var>ws</var><code>, int </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Line-Input.html#Line-Input">Line Input</a>.

     <!-- FILE -->
     <br><dt><code>FILE</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Streams.html#Streams">Streams</a>.

     <!-- FILENAME_MAX -->
     <br><dt><code>int FILENAME_MAX</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- fileno -->
     <br><dt><code>int fileno (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.1):  <a href="Descriptors-and-Streams.html#Descriptors-and-Streams">Descriptors and Streams</a>.

     <!-- fileno_unlocked -->
     <br><dt><code>int fileno_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Descriptors-and-Streams.html#Descriptors-and-Streams">Descriptors and Streams</a>.

     <!-- finite -->
     <br><dt><code>int finite (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- finitef -->
     <br><dt><code>int finitef (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- finitel -->
     <br><dt><code>int finitel (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- __flbf -->
     <br><dt><code>int __flbf (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- flockfile -->
     <br><dt><code>void flockfile (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Streams-and-Threads.html#Streams-and-Threads">Streams and Threads</a>.

     <!-- floor -->
     <br><dt><code>double floor (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- floorf -->
     <br><dt><code>float floorf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- floorl -->
     <br><dt><code>long double floorl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- FLT_DIG -->
     <br><dt><code>FLT_DIG</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_EPSILON -->
     <br><dt><code>FLT_EPSILON</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_MANT_DIG -->
     <br><dt><code>FLT_MANT_DIG</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_MAX -->
     <br><dt><code>FLT_MAX</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_MAX_10_EXP -->
     <br><dt><code>FLT_MAX_10_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_MAX_EXP -->
     <br><dt><code>FLT_MAX_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_MIN -->
     <br><dt><code>FLT_MIN</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_MIN_10_EXP -->
     <br><dt><code>FLT_MIN_10_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_MIN_EXP -->
     <br><dt><code>FLT_MIN_EXP</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_RADIX -->
     <br><dt><code>FLT_RADIX</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- FLT_ROUNDS -->
     <br><dt><code>FLT_ROUNDS</code><dd>
<samp><span class="file">float.h</span></samp> (ISO):  <a href="Floating-Point-Parameters.html#Floating-Point-Parameters">Floating Point Parameters</a>.

     <!-- _flushlbf -->
     <br><dt><code>void _flushlbf (void)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Flushing-Buffers.html#Flushing-Buffers">Flushing Buffers</a>.

     <!-- FLUSHO -->
     <br><dt><code>tcflag_t FLUSHO</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- fma -->
     <br><dt><code>double fma (double </code><var>x</var><code>, double </code><var>y</var><code>, double </code><var>z</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fmaf -->
     <br><dt><code>float fmaf (float </code><var>x</var><code>, float </code><var>y</var><code>, float </code><var>z</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fmal -->
     <br><dt><code>long double fmal (long double </code><var>x</var><code>, long double </code><var>y</var><code>, long double </code><var>z</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fmax -->
     <br><dt><code>double fmax (double </code><var>x</var><code>, double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fmaxf -->
     <br><dt><code>float fmaxf (float </code><var>x</var><code>, float </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fmaxl -->
     <br><dt><code>long double fmaxl (long double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fmemopen -->
     <br><dt><code>FILE * fmemopen (void *</code><var>buf</var><code>, size_t </code><var>size</var><code>, const char *</code><var>opentype</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="String-Streams.html#String-Streams">String Streams</a>.

     <!-- fmin -->
     <br><dt><code>double fmin (double </code><var>x</var><code>, double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fminf -->
     <br><dt><code>float fminf (float </code><var>x</var><code>, float </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fminl -->
     <br><dt><code>long double fminl (long double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Misc-FP-Arithmetic.html#Misc-FP-Arithmetic">Misc FP Arithmetic</a>.

     <!-- fmod -->
     <br><dt><code>double fmod (double </code><var>numerator</var><code>, double </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- fmodf -->
     <br><dt><code>float fmodf (float </code><var>numerator</var><code>, float </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- fmodl -->
     <br><dt><code>long double fmodl (long double </code><var>numerator</var><code>, long double </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- fmtmsg -->
     <br><dt><code>int fmtmsg (long int </code><var>classification</var><code>, const char *</code><var>label</var><code>, int </code><var>severity</var><code>, const char *</code><var>text</var><code>, const char *</code><var>action</var><code>, const char *</code><var>tag</var><code>)</code><dd>
<samp><span class="file">fmtmsg.h</span></samp> (XPG):  <a href="Printing-Formatted-Messages.html#Printing-Formatted-Messages">Printing Formatted Messages</a>.

     <!-- fnmatch -->
     <br><dt><code>int fnmatch (const char *</code><var>pattern</var><code>, const char *</code><var>string</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (POSIX.2):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- FNM_CASEFOLD -->
     <br><dt><code>FNM_CASEFOLD</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (GNU):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- FNM_EXTMATCH -->
     <br><dt><code>FNM_EXTMATCH</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (GNU):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- FNM_FILE_NAME -->
     <br><dt><code>FNM_FILE_NAME</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (GNU):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- FNM_LEADING_DIR -->
     <br><dt><code>FNM_LEADING_DIR</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (GNU):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- FNM_NOESCAPE -->
     <br><dt><code>FNM_NOESCAPE</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (POSIX.2):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- FNM_PATHNAME -->
     <br><dt><code>FNM_PATHNAME</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (POSIX.2):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- FNM_PERIOD -->
     <br><dt><code>FNM_PERIOD</code><dd>
<samp><span class="file">fnmatch.h</span></samp> (POSIX.2):  <a href="Wildcard-Matching.html#Wildcard-Matching">Wildcard Matching</a>.

     <!-- F_OK -->
     <br><dt><code>int F_OK</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Testing-File-Access.html#Testing-File-Access">Testing File Access</a>.

     <!-- fopen -->
     <br><dt><code>FILE * fopen (const char *</code><var>filename</var><code>, const char *</code><var>opentype</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- fopen64 -->
     <br><dt><code>FILE * fopen64 (const char *</code><var>filename</var><code>, const char *</code><var>opentype</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- fopencookie -->
     <br><dt><code>FILE * fopencookie (void *</code><var>cookie</var><code>, const char *</code><var>opentype</var><code>, cookie_io_functions_t </code><var>io-functions</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Streams-and-Cookies.html#Streams-and-Cookies">Streams and Cookies</a>.

     <!-- FOPEN_MAX -->
     <br><dt><code>int FOPEN_MAX</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- fork -->
     <br><dt><code>pid_t fork (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Creating-a-Process.html#Creating-a-Process">Creating a Process</a>.

     <!-- forkpty -->
     <br><dt><code>int forkpty (int *</code><var>amaster</var><code>, char *</code><var>name</var><code>, const struct termios *</code><var>termp</var><code>, const struct winsize *</code><var>winp</var><code>)</code><dd>
<samp><span class="file">pty.h</span></samp> (BSD):  <a href="Pseudo_002dTerminal-Pairs.html#Pseudo_002dTerminal-Pairs">Pseudo-Terminal Pairs</a>.

     <!-- fpathconf -->
     <br><dt><code>long int fpathconf (int </code><var>filedes</var><code>, int </code><var>parameter</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- fpclassify -->
     <br><dt><code>int fpclassify (</code><em>float-type</em> <var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- FPE_DECOVF_TRAP -->
     <br><dt><code>FPE_DECOVF_TRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_FLTDIV_FAULT -->
     <br><dt><code>FPE_FLTDIV_FAULT</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_FLTDIV_TRAP -->
     <br><dt><code>FPE_FLTDIV_TRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_FLTOVF_FAULT -->
     <br><dt><code>FPE_FLTOVF_FAULT</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_FLTOVF_TRAP -->
     <br><dt><code>FPE_FLTOVF_TRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_FLTUND_FAULT -->
     <br><dt><code>FPE_FLTUND_FAULT</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_FLTUND_TRAP -->
     <br><dt><code>FPE_FLTUND_TRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_INTDIV_TRAP -->
     <br><dt><code>FPE_INTDIV_TRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FPE_INTOVF_TRAP -->
     <br><dt><code>FPE_INTOVF_TRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- __fpending -->
     <br><dt><code>size_t __fpending (FILE *</code><var>stream</var><code>) The __fpending</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- FPE_SUBRNG_TRAP -->
     <br><dt><code>FPE_SUBRNG_TRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- FP_ILOGB0 -->
     <br><dt><code>int FP_ILOGB0</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- FP_ILOGBNAN -->
     <br><dt><code>int FP_ILOGBNAN</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- fpos64_t -->
     <br><dt><code>fpos64_t</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="Portable-Positioning.html#Portable-Positioning">Portable Positioning</a>.

     <!-- fpos_t -->
     <br><dt><code>fpos_t</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Portable-Positioning.html#Portable-Positioning">Portable Positioning</a>.

     <!-- fprintf -->
     <br><dt><code>int fprintf (FILE *</code><var>stream</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Formatted-Output-Functions.html#Formatted-Output-Functions">Formatted Output Functions</a>.

     <!-- __fpurge -->
     <br><dt><code>void __fpurge (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Flushing-Buffers.html#Flushing-Buffers">Flushing Buffers</a>.

     <!-- fputc -->
     <br><dt><code>int fputc (int </code><var>c</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- fputc_unlocked -->
     <br><dt><code>int fputc_unlocked (int </code><var>c</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- fputs -->
     <br><dt><code>int fputs (const char *</code><var>s</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- fputs_unlocked -->
     <br><dt><code>int fputs_unlocked (const char *</code><var>s</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- fputwc -->
     <br><dt><code>wint_t fputwc (wchar_t </code><var>wc</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- fputwc_unlocked -->
     <br><dt><code>wint_t fputwc_unlocked (wint_t </code><var>wc</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (POSIX):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- fputws -->
     <br><dt><code>int fputws (const wchar_t *</code><var>ws</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- fputws_unlocked -->
     <br><dt><code>int fputws_unlocked (const wchar_t *</code><var>ws</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- F_RDLCK -->
     <br><dt><code>F_RDLCK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="File-Locks.html#File-Locks">File Locks</a>.

     <!-- fread -->
     <br><dt><code>size_t fread (void *</code><var>data</var><code>, size_t </code><var>size</var><code>, size_t </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Block-Input_002fOutput.html#Block-Input_002fOutput">Block Input/Output</a>.

     <!-- __freadable -->
     <br><dt><code>int __freadable (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- __freading -->
     <br><dt><code>int __freading (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- fread_unlocked -->
     <br><dt><code>size_t fread_unlocked (void *</code><var>data</var><code>, size_t </code><var>size</var><code>, size_t </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Block-Input_002fOutput.html#Block-Input_002fOutput">Block Input/Output</a>.

     <!-- free -->
     <br><dt><code>void free (void *</code><var>ptr</var><code>)</code><dd>
<samp><span class="file">malloc.h</span></samp>, <samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Freeing-after-Malloc.html#Freeing-after-Malloc">Freeing after Malloc</a>.

     <!-- __free_hook -->
     <br><dt><code>__free_hook</code><dd>
<samp><span class="file">malloc.h</span></samp> (GNU):  <a href="Hooks-for-Malloc.html#Hooks-for-Malloc">Hooks for Malloc</a>.

     <!-- freopen -->
     <br><dt><code>FILE * freopen (const char *</code><var>filename</var><code>, const char *</code><var>opentype</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- freopen64 -->
     <br><dt><code>FILE * freopen64 (const char *</code><var>filename</var><code>, const char *</code><var>opentype</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- frexp -->
     <br><dt><code>double frexp (double </code><var>value</var><code>, int *</code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- frexpf -->
     <br><dt><code>float frexpf (float </code><var>value</var><code>, int *</code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- frexpl -->
     <br><dt><code>long double frexpl (long double </code><var>value</var><code>, int *</code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- fscanf -->
     <br><dt><code>int fscanf (FILE *</code><var>stream</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Formatted-Input-Functions.html#Formatted-Input-Functions">Formatted Input Functions</a>.

     <!-- fseek -->
     <br><dt><code>int fseek (FILE *</code><var>stream</var><code>, long int </code><var>offset</var><code>, int </code><var>whence</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- fseeko -->
     <br><dt><code>int fseeko (FILE *</code><var>stream</var><code>, off_t </code><var>offset</var><code>, int </code><var>whence</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- fseeko64 -->
     <br><dt><code>int fseeko64 (FILE *</code><var>stream</var><code>, off64_t </code><var>offset</var><code>, int </code><var>whence</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- F_SETFD -->
     <br><dt><code>int F_SETFD</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Descriptor-Flags.html#Descriptor-Flags">Descriptor Flags</a>.

     <!-- F_SETFL -->
     <br><dt><code>int F_SETFL</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Getting-File-Status-Flags.html#Getting-File-Status-Flags">Getting File Status Flags</a>.

     <!-- F_SETLK -->
     <br><dt><code>int F_SETLK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="File-Locks.html#File-Locks">File Locks</a>.

     <!-- F_SETLKW -->
     <br><dt><code>int F_SETLKW</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="File-Locks.html#File-Locks">File Locks</a>.

     <!-- __fsetlocking -->
     <br><dt><code>int __fsetlocking (FILE *</code><var>stream</var><code>, int </code><var>type</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Streams-and-Threads.html#Streams-and-Threads">Streams and Threads</a>.

     <!-- F_SETOWN -->
     <br><dt><code>int F_SETOWN</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Interrupt-Input.html#Interrupt-Input">Interrupt Input</a>.

     <!-- fsetpos -->
     <br><dt><code>int fsetpos (FILE *</code><var>stream</var><code>, const fpos_t *</code><var>position</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Portable-Positioning.html#Portable-Positioning">Portable Positioning</a>.

     <!-- fsetpos64 -->
     <br><dt><code>int fsetpos64 (FILE *</code><var>stream</var><code>, const fpos64_t *</code><var>position</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="Portable-Positioning.html#Portable-Positioning">Portable Positioning</a>.

     <!-- fstat -->
     <br><dt><code>int fstat (int </code><var>filedes</var><code>, struct stat *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Reading-Attributes.html#Reading-Attributes">Reading Attributes</a>.

     <!-- fstat64 -->
     <br><dt><code>int fstat64 (int </code><var>filedes</var><code>, struct stat64 *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (Unix98):  <a href="Reading-Attributes.html#Reading-Attributes">Reading Attributes</a>.

     <!-- fsync -->
     <br><dt><code>int fsync (int </code><var>fildes</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX):  <a href="Synchronizing-I_002fO.html#Synchronizing-I_002fO">Synchronizing I/O</a>.

     <!-- ftell -->
     <br><dt><code>long int ftell (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- ftello -->
     <br><dt><code>off_t ftello (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- ftello64 -->
     <br><dt><code>off64_t ftello64 (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- ftruncate -->
     <br><dt><code>int ftruncate (int </code><var>fd</var><code>, off_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX):  <a href="File-Size.html#File-Size">File Size</a>.

     <!-- ftruncate64 -->
     <br><dt><code>int ftruncate64 (int </code><var>id</var><code>, off64_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="File-Size.html#File-Size">File Size</a>.

     <!-- ftrylockfile -->
     <br><dt><code>int ftrylockfile (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Streams-and-Threads.html#Streams-and-Threads">Streams and Threads</a>.

     <!-- ftw -->
     <br><dt><code>int ftw (const char *</code><var>filename</var><code>, __ftw_func_t </code><var>func</var><code>, int </code><var>descriptors</var><code>)</code><dd>
<samp><span class="file">ftw.h</span></samp> (SVID):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- ftw64 -->
     <br><dt><code>int ftw64 (const char *</code><var>filename</var><code>, __ftw64_func_t </code><var>func</var><code>, int </code><var>descriptors</var><code>)</code><dd>
<samp><span class="file">ftw.h</span></samp> (Unix98):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- __ftw64_func_t -->
     <br><dt><code>__ftw64_func_t</code><dd>
<samp><span class="file">ftw.h</span></samp> (GNU):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- __ftw_func_t -->
     <br><dt><code>__ftw_func_t</code><dd>
<samp><span class="file">ftw.h</span></samp> (GNU):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- F_UNLCK -->
     <br><dt><code>F_UNLCK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="File-Locks.html#File-Locks">File Locks</a>.

     <!-- funlockfile -->
     <br><dt><code>void funlockfile (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Streams-and-Threads.html#Streams-and-Threads">Streams and Threads</a>.

     <!-- futimes -->
     <br><dt><code>int futimes (int </code><var>fd</var><code>, struct timeval </code><var>tvp</var><tt>[2]</tt><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="File-Times.html#File-Times">File Times</a>.

     <!-- fwide -->
     <br><dt><code>int fwide (FILE *</code><var>stream</var><code>, int </code><var>mode</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Streams-and-I18N.html#Streams-and-I18N">Streams and I18N</a>.

     <!-- fwprintf -->
     <br><dt><code>int fwprintf (FILE *</code><var>stream</var><code>, const wchar_t *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Formatted-Output-Functions.html#Formatted-Output-Functions">Formatted Output Functions</a>.

     <!-- __fwritable -->
     <br><dt><code>int __fwritable (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- fwrite -->
     <br><dt><code>size_t fwrite (const void *</code><var>data</var><code>, size_t </code><var>size</var><code>, size_t </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Block-Input_002fOutput.html#Block-Input_002fOutput">Block Input/Output</a>.

     <!-- fwrite_unlocked -->
     <br><dt><code>size_t fwrite_unlocked (const void *</code><var>data</var><code>, size_t </code><var>size</var><code>, size_t </code><var>count</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Block-Input_002fOutput.html#Block-Input_002fOutput">Block Input/Output</a>.

     <!-- __fwriting -->
     <br><dt><code>int __fwriting (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio_ext.h</span></samp> (GNU):  <a href="Opening-Streams.html#Opening-Streams">Opening Streams</a>.

     <!-- F_WRLCK -->
     <br><dt><code>F_WRLCK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="File-Locks.html#File-Locks">File Locks</a>.

     <!-- fwscanf -->
     <br><dt><code>int fwscanf (FILE *</code><var>stream</var><code>, const wchar_t *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Formatted-Input-Functions.html#Formatted-Input-Functions">Formatted Input Functions</a>.

     <!-- gamma -->
     <br><dt><code>double gamma (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- gammaf -->
     <br><dt><code>float gammaf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- gammal -->
     <br><dt><code>long double gammal (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- (*__gconv_end_fct) -->
     <br><dt><code>void (*__gconv_end_fct) (struct gconv_step *)</code><dd>
<samp><span class="file">gconv.h</span></samp> (GNU):  <a href="glibc-iconv-Implementation.html#glibc-iconv-Implementation">glibc iconv Implementation</a>.

     <!-- (*__gconv_fct) -->
     <br><dt><code>int (*__gconv_fct) (struct __gconv_step *, struct __gconv_step_data *, const char **, const char *, size_t *, int)</code><dd>
<samp><span class="file">gconv.h</span></samp> (GNU):  <a href="glibc-iconv-Implementation.html#glibc-iconv-Implementation">glibc iconv Implementation</a>.

     <!-- (*__gconv_init_fct) -->
     <br><dt><code>int (*__gconv_init_fct) (struct __gconv_step *)</code><dd>
<samp><span class="file">gconv.h</span></samp> (GNU):  <a href="glibc-iconv-Implementation.html#glibc-iconv-Implementation">glibc iconv Implementation</a>.

     <!-- gcvt -->
     <br><dt><code>char * gcvt (double </code><var>value</var><code>, int </code><var>ndigit</var><code>, char *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID, Unix98):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- get_avphys_pages -->
     <br><dt><code>long int get_avphys_pages (void)</code><dd>
<samp><span class="file">sys/sysinfo.h</span></samp> (GNU):  <a href="Query-Memory-Parameters.html#Query-Memory-Parameters">Query Memory Parameters</a>.

     <!-- getc -->
     <br><dt><code>int getc (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getchar -->
     <br><dt><code>int getchar (void)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getchar_unlocked -->
     <br><dt><code>int getchar_unlocked (void)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getcontext -->
     <br><dt><code>int getcontext (ucontext_t *</code><var>ucp</var><code>)</code><dd>
<samp><span class="file">ucontext.h</span></samp> (SVID):  <a href="System-V-contexts.html#System-V-contexts">System V contexts</a>.

     <!-- getc_unlocked -->
     <br><dt><code>int getc_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- get_current_dir_name -->
     <br><dt><code>char * get_current_dir_name (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Working-Directory.html#Working-Directory">Working Directory</a>.

     <!-- getcwd -->
     <br><dt><code>char * getcwd (char *</code><var>buffer</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Working-Directory.html#Working-Directory">Working Directory</a>.

     <!-- getdate -->
     <br><dt><code>struct tm * getdate (const char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (Unix98):  <a href="General-Time-String-Parsing.html#General-Time-String-Parsing">General Time String Parsing</a>.

     <!-- getdate_err -->
     <br><dt><code>getdate_err</code><dd>
<samp><span class="file">time.h</span></samp> (Unix98):  <a href="General-Time-String-Parsing.html#General-Time-String-Parsing">General Time String Parsing</a>.

     <!-- getdate_r -->
     <br><dt><code>int getdate_r (const char *</code><var>string</var><code>, struct tm *</code><var>tp</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (GNU):  <a href="General-Time-String-Parsing.html#General-Time-String-Parsing">General Time String Parsing</a>.

     <!-- getdelim -->
     <br><dt><code>ssize_t getdelim (char **</code><var>lineptr</var><code>, size_t *</code><var>n</var><code>, int </code><var>delimiter</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Line-Input.html#Line-Input">Line Input</a>.

     <!-- getdomainnname -->
     <br><dt><code>int getdomainnname (char *</code><var>name</var><code>, size_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (???):  <a href="Host-Identification.html#Host-Identification">Host Identification</a>.

     <!-- getegid -->
     <br><dt><code>gid_t getegid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Reading-Persona.html#Reading-Persona">Reading Persona</a>.

     <!-- getenv -->
     <br><dt><code>char * getenv (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Environment-Access.html#Environment-Access">Environment Access</a>.

     <!-- geteuid -->
     <br><dt><code>uid_t geteuid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Reading-Persona.html#Reading-Persona">Reading Persona</a>.

     <!-- getfsent -->
     <br><dt><code>struct fstab * getfsent (void)</code><dd>
<samp><span class="file">fstab.h</span></samp> (BSD):  <a href="fstab.html#fstab">fstab</a>.

     <!-- getfsfile -->
     <br><dt><code>struct fstab * getfsfile (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">fstab.h</span></samp> (BSD):  <a href="fstab.html#fstab">fstab</a>.

     <!-- getfsspec -->
     <br><dt><code>struct fstab * getfsspec (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">fstab.h</span></samp> (BSD):  <a href="fstab.html#fstab">fstab</a>.

     <!-- getgid -->
     <br><dt><code>gid_t getgid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Reading-Persona.html#Reading-Persona">Reading Persona</a>.

     <!-- getgrent -->
     <br><dt><code>struct group * getgrent (void)</code><dd>
<samp><span class="file">grp.h</span></samp> (SVID, BSD):  <a href="Scanning-All-Groups.html#Scanning-All-Groups">Scanning All Groups</a>.

     <!-- getgrent_r -->
     <br><dt><code>int getgrent_r (struct group *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>buflen</var><code>, struct group **</code><var>result</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (GNU):  <a href="Scanning-All-Groups.html#Scanning-All-Groups">Scanning All Groups</a>.

     <!-- getgrgid -->
     <br><dt><code>struct group * getgrgid (gid_t </code><var>gid</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (POSIX.1):  <a href="Lookup-Group.html#Lookup-Group">Lookup Group</a>.

     <!-- getgrgid_r -->
     <br><dt><code>int getgrgid_r (gid_t </code><var>gid</var><code>, struct group *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>buflen</var><code>, struct group **</code><var>result</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (POSIX.1c):  <a href="Lookup-Group.html#Lookup-Group">Lookup Group</a>.

     <!-- getgrnam -->
     <br><dt><code>struct group * getgrnam (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (SVID, BSD):  <a href="Lookup-Group.html#Lookup-Group">Lookup Group</a>.

     <!-- getgrnam_r -->
     <br><dt><code>int getgrnam_r (const char *</code><var>name</var><code>, struct group *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>buflen</var><code>, struct group **</code><var>result</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (POSIX.1c):  <a href="Lookup-Group.html#Lookup-Group">Lookup Group</a>.

     <!-- getgrouplist -->
     <br><dt><code>int getgrouplist (const char *</code><var>user</var><code>, gid_t </code><var>group</var><code>, gid_t *</code><var>groups</var><code>, int *</code><var>ngroups</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (BSD):  <a href="Setting-Groups.html#Setting-Groups">Setting Groups</a>.

     <!-- getgroups -->
     <br><dt><code>int getgroups (int </code><var>count</var><code>, gid_t *</code><var>groups</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Reading-Persona.html#Reading-Persona">Reading Persona</a>.

     <!-- gethostbyaddr -->
     <br><dt><code>struct hostent * gethostbyaddr (const char *</code><var>addr</var><code>, size_t </code><var>length</var><code>, int </code><var>format</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- gethostbyaddr_r -->
     <br><dt><code>int gethostbyaddr_r (const char *</code><var>addr</var><code>, size_t </code><var>length</var><code>, int </code><var>format</var><code>, struct hostent *restrict </code><var>result_buf</var><code>, char *restrict </code><var>buf</var><code>, size_t </code><var>buflen</var><code>, struct hostent **restrict </code><var>result</var><code>, int *restrict </code><var>h_errnop</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (GNU):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- gethostbyname -->
     <br><dt><code>struct hostent * gethostbyname (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- gethostbyname2 -->
     <br><dt><code>struct hostent * gethostbyname2 (const char *</code><var>name</var><code>, int </code><var>af</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (IPv6 Basic API):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- gethostbyname2_r -->
     <br><dt><code>int gethostbyname2_r (const char *</code><var>name</var><code>, int </code><var>af</var><code>, struct hostent *restrict </code><var>result_buf</var><code>, char *restrict </code><var>buf</var><code>, size_t </code><var>buflen</var><code>, struct hostent **restrict </code><var>result</var><code>, int *restrict </code><var>h_errnop</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (GNU):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- gethostbyname_r -->
     <br><dt><code>int gethostbyname_r (const char *restrict </code><var>name</var><code>, struct hostent *restrict </code><var>result_buf</var><code>, char *restrict </code><var>buf</var><code>, size_t </code><var>buflen</var><code>, struct hostent **restrict </code><var>result</var><code>, int *restrict </code><var>h_errnop</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (GNU):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- gethostent -->
     <br><dt><code>struct hostent * gethostent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- gethostid -->
     <br><dt><code>long int gethostid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Host-Identification.html#Host-Identification">Host Identification</a>.

     <!-- gethostname -->
     <br><dt><code>int gethostname (char *</code><var>name</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Host-Identification.html#Host-Identification">Host Identification</a>.

     <!-- getitimer -->
     <br><dt><code>int getitimer (int </code><var>which</var><code>, struct itimerval *</code><var>old</var><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="Setting-an-Alarm.html#Setting-an-Alarm">Setting an Alarm</a>.

     <!-- getline -->
     <br><dt><code>ssize_t getline (char **</code><var>lineptr</var><code>, size_t *</code><var>n</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Line-Input.html#Line-Input">Line Input</a>.

     <!-- getloadavg -->
     <br><dt><code>int getloadavg (double </code><var>loadavg</var><code>[], int </code><var>nelem</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Processor-Resources.html#Processor-Resources">Processor Resources</a>.

     <!-- getlogin -->
     <br><dt><code>char * getlogin (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Who-Logged-In.html#Who-Logged-In">Who Logged In</a>.

     <!-- getmntent -->
     <br><dt><code>struct mntent * getmntent (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">mntent.h</span></samp> (BSD):  <a href="mtab.html#mtab">mtab</a>.

     <!-- getmntent_r -->
     <br><dt><code>struct mntent * getmntent_r (FILE *</code><var>stream</var><code>, struct mentent *</code><var>result</var><code>, char *</code><var>buffer</var><code>, int </code><var>bufsize</var><code>)</code><dd>
<samp><span class="file">mntent.h</span></samp> (BSD):  <a href="mtab.html#mtab">mtab</a>.

     <!-- getnetbyaddr -->
     <br><dt><code>struct netent * getnetbyaddr (unsigned long int </code><var>net</var><code>, int </code><var>type</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Networks-Database.html#Networks-Database">Networks Database</a>.

     <!-- getnetbyname -->
     <br><dt><code>struct netent * getnetbyname (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Networks-Database.html#Networks-Database">Networks Database</a>.

     <!-- getnetent -->
     <br><dt><code>struct netent * getnetent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Networks-Database.html#Networks-Database">Networks Database</a>.

     <!-- getnetgrent -->
     <br><dt><code>int getnetgrent (char **</code><var>hostp</var><code>, char **</code><var>userp</var><code>, char **</code><var>domainp</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Lookup-Netgroup.html#Lookup-Netgroup">Lookup Netgroup</a>.

     <!-- getnetgrent_r -->
     <br><dt><code>int getnetgrent_r (char **</code><var>hostp</var><code>, char **</code><var>userp</var><code>, char **</code><var>domainp</var><code>, char *</code><var>buffer</var><code>, int </code><var>buflen</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (GNU):  <a href="Lookup-Netgroup.html#Lookup-Netgroup">Lookup Netgroup</a>.

     <!-- get_nprocs -->
     <br><dt><code>int get_nprocs (void)</code><dd>
<samp><span class="file">sys/sysinfo.h</span></samp> (GNU):  <a href="Processor-Resources.html#Processor-Resources">Processor Resources</a>.

     <!-- get_nprocs_conf -->
     <br><dt><code>int get_nprocs_conf (void)</code><dd>
<samp><span class="file">sys/sysinfo.h</span></samp> (GNU):  <a href="Processor-Resources.html#Processor-Resources">Processor Resources</a>.

     <!-- getopt -->
     <br><dt><code>int getopt (int </code><var>argc</var><code>, char **</code><var>argv</var><code>, const char *</code><var>options</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Using-Getopt.html#Using-Getopt">Using Getopt</a>.

     <!-- getopt_long -->
     <br><dt><code>int getopt_long (int </code><var>argc</var><code>, char *const *</code><var>argv</var><code>, const char *</code><var>shortopts</var><code>, const struct option *</code><var>longopts</var><code>, int *</code><var>indexptr</var><code>)</code><dd>
<samp><span class="file">getopt.h</span></samp> (GNU):  <a href="Getopt-Long-Options.html#Getopt-Long-Options">Getopt Long Options</a>.

     <!-- getopt_long_only -->
     <br><dt><code>int getopt_long_only (int </code><var>argc</var><code>, char *const *</code><var>argv</var><code>, const char *</code><var>shortopts</var><code>, const struct option *</code><var>longopts</var><code>, int *</code><var>indexptr</var><code>)</code><dd>
<samp><span class="file">getopt.h</span></samp> (GNU):  <a href="Getopt-Long-Options.html#Getopt-Long-Options">Getopt Long Options</a>.

     <!-- getpagesize -->
     <br><dt><code>int getpagesize (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Query-Memory-Parameters.html#Query-Memory-Parameters">Query Memory Parameters</a>.

     <!-- getpass -->
     <br><dt><code>char * getpass (const char *</code><var>prompt</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="getpass.html#getpass">getpass</a>.

     <!-- getpeername -->
     <br><dt><code>int getpeername (int </code><var>socket</var><code>, struct sockaddr *</code><var>addr</var><code>, socklen_t *</code><var>length-ptr</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Who-is-Connected.html#Who-is-Connected">Who is Connected</a>.

     <!-- getpgid -->
     <br><dt><code>int getpgid (pid_t </code><var>pid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (SVID):  <a href="Process-Group-Functions.html#Process-Group-Functions">Process Group Functions</a>.

     <!-- getpgrp -->
     <br><dt><code>pid_t getpgrp (pid_t </code><var>pid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Process-Group-Functions.html#Process-Group-Functions">Process Group Functions</a>.

     <!-- getpgrp -->
     <br><dt><code>pid_t getpgrp (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Process-Group-Functions.html#Process-Group-Functions">Process Group Functions</a>.

     <!-- get_phys_pages -->
     <br><dt><code>long int get_phys_pages (void)</code><dd>
<samp><span class="file">sys/sysinfo.h</span></samp> (GNU):  <a href="Query-Memory-Parameters.html#Query-Memory-Parameters">Query Memory Parameters</a>.

     <!-- getpid -->
     <br><dt><code>pid_t getpid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Process-Identification.html#Process-Identification">Process Identification</a>.

     <!-- getppid -->
     <br><dt><code>pid_t getppid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Process-Identification.html#Process-Identification">Process Identification</a>.

     <!-- getpriority -->
     <br><dt><code>int getpriority (int </code><var>class</var><code>, int </code><var>id</var><code>)</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD,POSIX):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- getprotobyname -->
     <br><dt><code>struct protoent * getprotobyname (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Protocols-Database.html#Protocols-Database">Protocols Database</a>.

     <!-- getprotobynumber -->
     <br><dt><code>struct protoent * getprotobynumber (int </code><var>protocol</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Protocols-Database.html#Protocols-Database">Protocols Database</a>.

     <!-- getprotoent -->
     <br><dt><code>struct protoent * getprotoent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Protocols-Database.html#Protocols-Database">Protocols Database</a>.

     <!-- getpt -->
     <br><dt><code>int getpt (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="Allocation.html#Allocation">Allocation</a>.

     <!-- getpwent -->
     <br><dt><code>struct passwd * getpwent (void)</code><dd>
<samp><span class="file">pwd.h</span></samp> (POSIX.1):  <a href="Scanning-All-Users.html#Scanning-All-Users">Scanning All Users</a>.

     <!-- getpwent_r -->
     <br><dt><code>int getpwent_r (struct passwd *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, int </code><var>buflen</var><code>, struct passwd **</code><var>result</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (GNU):  <a href="Scanning-All-Users.html#Scanning-All-Users">Scanning All Users</a>.

     <!-- getpwnam -->
     <br><dt><code>struct passwd * getpwnam (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (POSIX.1):  <a href="Lookup-User.html#Lookup-User">Lookup User</a>.

     <!-- getpwnam_r -->
     <br><dt><code>int getpwnam_r (const char *</code><var>name</var><code>, struct passwd *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>buflen</var><code>, struct passwd **</code><var>result</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (POSIX.1c):  <a href="Lookup-User.html#Lookup-User">Lookup User</a>.

     <!-- getpwuid -->
     <br><dt><code>struct passwd * getpwuid (uid_t </code><var>uid</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (POSIX.1):  <a href="Lookup-User.html#Lookup-User">Lookup User</a>.

     <!-- getpwuid_r -->
     <br><dt><code>int getpwuid_r (uid_t </code><var>uid</var><code>, struct passwd *</code><var>result_buf</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>buflen</var><code>, struct passwd **</code><var>result</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (POSIX.1c):  <a href="Lookup-User.html#Lookup-User">Lookup User</a>.

     <!-- getrlimit -->
     <br><dt><code>int getrlimit (int </code><var>resource</var><code>, struct rlimit *</code><var>rlp</var><code>)</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- getrlimit64 -->
     <br><dt><code>int getrlimit64 (int </code><var>resource</var><code>, struct rlimit64 *</code><var>rlp</var><code>)</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (Unix98):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- getrusage -->
     <br><dt><code>int getrusage (int </code><var>processes</var><code>, struct rusage *</code><var>rusage</var><code>)</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Resource-Usage.html#Resource-Usage">Resource Usage</a>.

     <!-- gets -->
     <br><dt><code>char * gets (char *</code><var>s</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Line-Input.html#Line-Input">Line Input</a>.

     <!-- getservbyname -->
     <br><dt><code>struct servent * getservbyname (const char *</code><var>name</var><code>, const char *</code><var>proto</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Services-Database.html#Services-Database">Services Database</a>.

     <!-- getservbyport -->
     <br><dt><code>struct servent * getservbyport (int </code><var>port</var><code>, const char *</code><var>proto</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Services-Database.html#Services-Database">Services Database</a>.

     <!-- getservent -->
     <br><dt><code>struct servent * getservent (void)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Services-Database.html#Services-Database">Services Database</a>.

     <!-- getsid -->
     <br><dt><code>pid_t getsid (pid_t </code><var>pid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (SVID):  <a href="Process-Group-Functions.html#Process-Group-Functions">Process Group Functions</a>.

     <!-- getsockname -->
     <br><dt><code>int getsockname (int </code><var>socket</var><code>, struct sockaddr *</code><var>addr</var><code>, socklen_t *</code><var>length-ptr</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Reading-Address.html#Reading-Address">Reading Address</a>.

     <!-- getsockopt -->
     <br><dt><code>int getsockopt (int </code><var>socket</var><code>, int </code><var>level</var><code>, int </code><var>optname</var><code>, void *</code><var>optval</var><code>, socklen_t *</code><var>optlen-ptr</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket-Option-Functions.html#Socket-Option-Functions">Socket Option Functions</a>.

     <!-- getsubopt -->
     <br><dt><code>int getsubopt (char **</code><var>optionp</var><code>, const char* const *</code><var>tokens</var><code>, char **</code><var>valuep</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (stdlib.h):  <a href="Suboptions.html#Suboptions">Suboptions Example</a>.

     <!-- gettext -->
     <br><dt><code>char * gettext (const char *</code><var>msgid</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Translation-with-gettext.html#Translation-with-gettext">Translation with gettext</a>.

     <!-- gettimeofday -->
     <br><dt><code>int gettimeofday (struct timeval *</code><var>tp</var><code>, struct timezone *</code><var>tzp</var><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="High_002dResolution-Calendar.html#High_002dResolution-Calendar">High-Resolution Calendar</a>.

     <!-- getuid -->
     <br><dt><code>uid_t getuid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Reading-Persona.html#Reading-Persona">Reading Persona</a>.

     <!-- getumask -->
     <br><dt><code>mode_t getumask (void)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (GNU):  <a href="Setting-Permissions.html#Setting-Permissions">Setting Permissions</a>.

     <!-- getutent -->
     <br><dt><code>struct utmp * getutent (void)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- getutent_r -->
     <br><dt><code>int getutent_r (struct utmp *</code><var>buffer</var><code>, struct utmp **</code><var>result</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (GNU):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- getutid -->
     <br><dt><code>struct utmp * getutid (const struct utmp *</code><var>id</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- getutid_r -->
     <br><dt><code>int getutid_r (const struct utmp *</code><var>id</var><code>, struct utmp *</code><var>buffer</var><code>, struct utmp **</code><var>result</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (GNU):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- getutline -->
     <br><dt><code>struct utmp * getutline (const struct utmp *</code><var>line</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- getutline_r -->
     <br><dt><code>int getutline_r (const struct utmp *</code><var>line</var><code>, struct utmp *</code><var>buffer</var><code>, struct utmp **</code><var>result</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (GNU):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- getutmp -->
     <br><dt><code>int getutmp (const struct utmpx *utmpx, struct utmp *utmp)</code><dd>
<samp><span class="file">utmp.h</span></samp> (GNU):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- getutmpx -->
     <br><dt><code>int getutmpx (const struct utmp *utmp, struct utmpx *utmpx)</code><dd>
<samp><span class="file">utmp.h</span></samp> (GNU):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- getutxent -->
     <br><dt><code>struct utmpx * getutxent (void)</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- getutxid -->
     <br><dt><code>struct utmpx * getutxid (const struct utmpx *</code><var>id</var><code>)</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- getutxline -->
     <br><dt><code>struct utmpx * getutxline (const struct utmpx *</code><var>line</var><code>)</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- getw -->
     <br><dt><code>int getw (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (SVID):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getwc -->
     <br><dt><code>wint_t getwc (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getwchar -->
     <br><dt><code>wint_t getwchar (void)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getwchar_unlocked -->
     <br><dt><code>wint_t getwchar_unlocked (void)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getwc_unlocked -->
     <br><dt><code>wint_t getwc_unlocked (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Character-Input.html#Character-Input">Character Input</a>.

     <!-- getwd -->
     <br><dt><code>char * getwd (char *</code><var>buffer</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Working-Directory.html#Working-Directory">Working Directory</a>.

     <!-- gid_t -->
     <br><dt><code>gid_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="Reading-Persona.html#Reading-Persona">Reading Persona</a>.

     <!-- glob -->
     <br><dt><code>int glob (const char *</code><var>pattern</var><code>, int </code><var>flags</var><code>, int (*</code><var>errfunc</var><code>) (const char *</code><var>filename</var><code>, int </code><var>error-code</var><code>), glob_t *</code><var>vector-ptr</var><code>)</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Calling-Glob.html#Calling-Glob">Calling Glob</a>.

     <!-- glob64 -->
     <br><dt><code>int glob64 (const char *</code><var>pattern</var><code>, int </code><var>flags</var><code>, int (*</code><var>errfunc</var><code>) (const char *</code><var>filename</var><code>, int </code><var>error-code</var><code>), glob64_t *</code><var>vector-ptr</var><code>)</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="Calling-Glob.html#Calling-Glob">Calling Glob</a>.

     <!-- glob64_t -->
     <br><dt><code>glob64_t</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="Calling-Glob.html#Calling-Glob">Calling Glob</a>.

     <!-- GLOB_ABORTED -->
     <br><dt><code>GLOB_ABORTED</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Calling-Glob.html#Calling-Glob">Calling Glob</a>.

     <!-- GLOB_ALTDIRFUNC -->
     <br><dt><code>GLOB_ALTDIRFUNC</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- GLOB_APPEND -->
     <br><dt><code>GLOB_APPEND</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Flags-for-Globbing.html#Flags-for-Globbing">Flags for Globbing</a>.

     <!-- GLOB_BRACE -->
     <br><dt><code>GLOB_BRACE</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- GLOB_DOOFFS -->
     <br><dt><code>GLOB_DOOFFS</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Flags-for-Globbing.html#Flags-for-Globbing">Flags for Globbing</a>.

     <!-- GLOB_ERR -->
     <br><dt><code>GLOB_ERR</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Flags-for-Globbing.html#Flags-for-Globbing">Flags for Globbing</a>.

     <!-- globfree -->
     <br><dt><code>void globfree (glob_t *</code><var>pglob</var><code>)</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- globfree64 -->
     <br><dt><code>void globfree64 (glob64_t *</code><var>pglob</var><code>)</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- GLOB_MAGCHAR -->
     <br><dt><code>GLOB_MAGCHAR</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- GLOB_MARK -->
     <br><dt><code>GLOB_MARK</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Flags-for-Globbing.html#Flags-for-Globbing">Flags for Globbing</a>.

     <!-- GLOB_NOCHECK -->
     <br><dt><code>GLOB_NOCHECK</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Flags-for-Globbing.html#Flags-for-Globbing">Flags for Globbing</a>.

     <!-- GLOB_NOESCAPE -->
     <br><dt><code>GLOB_NOESCAPE</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Flags-for-Globbing.html#Flags-for-Globbing">Flags for Globbing</a>.

     <!-- GLOB_NOMAGIC -->
     <br><dt><code>GLOB_NOMAGIC</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- GLOB_NOMATCH -->
     <br><dt><code>GLOB_NOMATCH</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Calling-Glob.html#Calling-Glob">Calling Glob</a>.

     <!-- GLOB_NOSORT -->
     <br><dt><code>GLOB_NOSORT</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Flags-for-Globbing.html#Flags-for-Globbing">Flags for Globbing</a>.

     <!-- GLOB_NOSPACE -->
     <br><dt><code>GLOB_NOSPACE</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Calling-Glob.html#Calling-Glob">Calling Glob</a>.

     <!-- GLOB_ONLYDIR -->
     <br><dt><code>GLOB_ONLYDIR</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- GLOB_PERIOD -->
     <br><dt><code>GLOB_PERIOD</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- glob_t -->
     <br><dt><code>glob_t</code><dd>
<samp><span class="file">glob.h</span></samp> (POSIX.2):  <a href="Calling-Glob.html#Calling-Glob">Calling Glob</a>.

     <!-- GLOB_TILDE -->
     <br><dt><code>GLOB_TILDE</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- GLOB_TILDE_CHECK -->
     <br><dt><code>GLOB_TILDE_CHECK</code><dd>
<samp><span class="file">glob.h</span></samp> (GNU):  <a href="More-Flags-for-Globbing.html#More-Flags-for-Globbing">More Flags for Globbing</a>.

     <!-- gmtime -->
     <br><dt><code>struct tm * gmtime (const time_t *</code><var>time</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- gmtime_r -->
     <br><dt><code>struct tm * gmtime_r (const time_t *</code><var>time</var><code>, struct tm *</code><var>resultp</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1c):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- _GNU_SOURCE -->
     <br><dt><code>_GNU_SOURCE</code><dd>
(GNU):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- grantpt -->
     <br><dt><code>int grantpt (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID, XPG4.2):  <a href="Allocation.html#Allocation">Allocation</a>.

     <!-- gsignal -->
     <br><dt><code>int gsignal (int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (SVID):  <a href="Signaling-Yourself.html#Signaling-Yourself">Signaling Yourself</a>.

     <!-- gtty -->
     <br><dt><code>int gtty (int </code><var>filedes</var><code>, struct sgttyb *</code><var>attributes</var><code>)</code><dd>
<samp><span class="file">sgtty.h</span></samp> (BSD):  <a href="BSD-Terminal-Modes.html#BSD-Terminal-Modes">BSD Terminal Modes</a>.

     <!-- hasmntopt -->
     <br><dt><code>char * hasmntopt (const struct mntent *</code><var>mnt</var><code>, const char *</code><var>opt</var><code>)</code><dd>
<samp><span class="file">mntent.h</span></samp> (BSD):  <a href="mtab.html#mtab">mtab</a>.

     <!-- hcreate -->
     <br><dt><code>int hcreate (size_t </code><var>nel</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Hash-Search-Function.html#Hash-Search-Function">Hash Search Function</a>.

     <!-- hcreate_r -->
     <br><dt><code>int hcreate_r (size_t </code><var>nel</var><code>, struct hsearch_data *</code><var>htab</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (GNU):  <a href="Hash-Search-Function.html#Hash-Search-Function">Hash Search Function</a>.

     <!-- hdestroy -->
     <br><dt><code>void hdestroy (void)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Hash-Search-Function.html#Hash-Search-Function">Hash Search Function</a>.

     <!-- hdestroy_r -->
     <br><dt><code>void hdestroy_r (struct hsearch_data *</code><var>htab</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (GNU):  <a href="Hash-Search-Function.html#Hash-Search-Function">Hash Search Function</a>.

     <!-- HOST_NOT_FOUND -->
     <br><dt><code>HOST_NOT_FOUND</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- hsearch -->
     <br><dt><code>ENTRY * hsearch (ENTRY </code><var>item</var><code>, ACTION </code><var>action</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Hash-Search-Function.html#Hash-Search-Function">Hash Search Function</a>.

     <!-- hsearch_r -->
     <br><dt><code>int hsearch_r (ENTRY </code><var>item</var><code>, ACTION </code><var>action</var><code>, ENTRY **</code><var>retval</var><code>, struct hsearch_data *</code><var>htab</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (GNU):  <a href="Hash-Search-Function.html#Hash-Search-Function">Hash Search Function</a>.

     <!-- htonl -->
     <br><dt><code>uint32_t htonl (uint32_t </code><var>hostlong</var><code>)</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Byte-Order.html#Byte-Order">Byte Order</a>.

     <!-- htons -->
     <br><dt><code>uint16_t htons (uint16_t </code><var>hostshort</var><code>)</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Byte-Order.html#Byte-Order">Byte Order</a>.

     <!-- HUGE_VAL -->
     <br><dt><code>double HUGE_VAL</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Math-Error-Reporting.html#Math-Error-Reporting">Math Error Reporting</a>.

     <!-- HUGE_VALF -->
     <br><dt><code>float HUGE_VALF</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Math-Error-Reporting.html#Math-Error-Reporting">Math Error Reporting</a>.

     <!-- HUGE_VALL -->
     <br><dt><code>long double HUGE_VALL</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Math-Error-Reporting.html#Math-Error-Reporting">Math Error Reporting</a>.

     <!-- HUPCL -->
     <br><dt><code>tcflag_t HUPCL</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- hypot -->
     <br><dt><code>double hypot (double </code><var>x</var><code>, double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- hypotf -->
     <br><dt><code>float hypotf (float </code><var>x</var><code>, float </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- hypotl -->
     <br><dt><code>long double hypotl (long double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- ICANON -->
     <br><dt><code>tcflag_t ICANON</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- iconv -->
     <br><dt><code>size_t iconv (iconv_t </code><var>cd</var><code>, char **</code><var>inbuf</var><code>, size_t *</code><var>inbytesleft</var><code>, char **</code><var>outbuf</var><code>, size_t *</code><var>outbytesleft</var><code>)</code><dd>
<samp><span class="file">iconv.h</span></samp> (XPG2):  <a href="Generic-Conversion-Interface.html#Generic-Conversion-Interface">Generic Conversion Interface</a>.

     <!-- iconv_close -->
     <br><dt><code>int iconv_close (iconv_t </code><var>cd</var><code>)</code><dd>
<samp><span class="file">iconv.h</span></samp> (XPG2):  <a href="Generic-Conversion-Interface.html#Generic-Conversion-Interface">Generic Conversion Interface</a>.

     <!-- iconv_open -->
     <br><dt><code>iconv_t iconv_open (const char *</code><var>tocode</var><code>, const char *</code><var>fromcode</var><code>)</code><dd>
<samp><span class="file">iconv.h</span></samp> (XPG2):  <a href="Generic-Conversion-Interface.html#Generic-Conversion-Interface">Generic Conversion Interface</a>.

     <!-- iconv_t -->
     <br><dt><code>iconv_t</code><dd>
<samp><span class="file">iconv.h</span></samp> (XPG2):  <a href="Generic-Conversion-Interface.html#Generic-Conversion-Interface">Generic Conversion Interface</a>.

     <!-- ICRNL -->
     <br><dt><code>tcflag_t ICRNL</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- IEXTEN -->
     <br><dt><code>tcflag_t IEXTEN</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- if_freenameindex -->
     <br><dt><code>void if_freenameindex (struct if_nameindex *ptr)</code><dd>
<samp><span class="file">net/if.h</span></samp> (IPv6 basic API):  <a href="Interface-Naming.html#Interface-Naming">Interface Naming</a>.

     <!-- if_indextoname -->
     <br><dt><code>char * if_indextoname (unsigned int ifindex, char *ifname)</code><dd>
<samp><span class="file">net/if.h</span></samp> (IPv6 basic API):  <a href="Interface-Naming.html#Interface-Naming">Interface Naming</a>.

     <!-- if_nameindex -->
     <br><dt><code>struct if_nameindex * if_nameindex (void)</code><dd>
<samp><span class="file">net/if.h</span></samp> (IPv6 basic API):  <a href="Interface-Naming.html#Interface-Naming">Interface Naming</a>.

     <!-- if_nametoindex -->
     <br><dt><code>unsigned int if_nametoindex (const char *ifname)</code><dd>
<samp><span class="file">net/if.h</span></samp> (IPv6 basic API):  <a href="Interface-Naming.html#Interface-Naming">Interface Naming</a>.

     <!-- IFNAMSIZ -->
     <br><dt><code>size_t IFNAMSIZ</code><dd>
<samp><span class="file">net/if.h</span></samp> (net/if.h):  <a href="Interface-Naming.html#Interface-Naming">Interface Naming</a>.

     <!-- IFTODT -->
     <br><dt><code>int IFTODT (mode_t </code><var>mode</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (BSD):  <a href="Directory-Entries.html#Directory-Entries">Directory Entries</a>.

     <!-- IGNBRK -->
     <br><dt><code>tcflag_t IGNBRK</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- IGNCR -->
     <br><dt><code>tcflag_t IGNCR</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- IGNPAR -->
     <br><dt><code>tcflag_t IGNPAR</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- ilogb -->
     <br><dt><code>int ilogb (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- ilogbf -->
     <br><dt><code>int ilogbf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- ilogbl -->
     <br><dt><code>int ilogbl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- imaxabs -->
     <br><dt><code>intmax_t imaxabs (intmax_t </code><var>number</var><code>)</code><dd>
<samp><span class="file">inttypes.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- IMAXBEL -->
     <br><dt><code>tcflag_t IMAXBEL</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- imaxdiv -->
     <br><dt><code>imaxdiv_t imaxdiv (intmax_t </code><var>numerator</var><code>, intmax_t </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">inttypes.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- imaxdiv_t -->
     <br><dt><code>imaxdiv_t</code><dd>
<samp><span class="file">inttypes.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- in6addr_any -->
     <br><dt><code>struct in6_addr in6addr_any</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (IPv6 basic API):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- in6addr_loopback -->
     <br><dt><code>struct in6_addr in6addr_loopback</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (IPv6 basic API):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- INADDR_ANY -->
     <br><dt><code>uint32_t INADDR_ANY</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- INADDR_BROADCAST -->
     <br><dt><code>uint32_t INADDR_BROADCAST</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- INADDR_LOOPBACK -->
     <br><dt><code>uint32_t INADDR_LOOPBACK</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- INADDR_NONE -->
     <br><dt><code>uint32_t INADDR_NONE</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- index -->
     <br><dt><code>char * index (const char *</code><var>string</var><code>, int </code><var>c</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- inet_addr -->
     <br><dt><code>uint32_t inet_addr (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (BSD):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_aton -->
     <br><dt><code>int inet_aton (const char *</code><var>name</var><code>, struct in_addr *</code><var>addr</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (BSD):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_lnaof -->
     <br><dt><code>uint32_t inet_lnaof (struct in_addr </code><var>addr</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (BSD):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_makeaddr -->
     <br><dt><code>struct in_addr inet_makeaddr (uint32_t </code><var>net</var><code>, uint32_t </code><var>local</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (BSD):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_netof -->
     <br><dt><code>uint32_t inet_netof (struct in_addr </code><var>addr</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (BSD):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_network -->
     <br><dt><code>uint32_t inet_network (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (BSD):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_ntoa -->
     <br><dt><code>char * inet_ntoa (struct in_addr </code><var>addr</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (BSD):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_ntop -->
     <br><dt><code>const char * inet_ntop (int </code><var>af</var><code>, const void *</code><var>cp</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (IPv6 basic API):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- inet_pton -->
     <br><dt><code>int inet_pton (int </code><var>af</var><code>, const char *</code><var>cp</var><code>, void *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">arpa/inet.h</span></samp> (IPv6 basic API):  <a href="Host-Address-Functions.html#Host-Address-Functions">Host Address Functions</a>.

     <!-- INFINITY -->
     <br><dt><code>float INFINITY</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Infinity-and-NaN.html#Infinity-and-NaN">Infinity and NaN</a>.

     <!-- initgroups -->
     <br><dt><code>int initgroups (const char *</code><var>user</var><code>, gid_t </code><var>group</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (BSD):  <a href="Setting-Groups.html#Setting-Groups">Setting Groups</a>.

     <!-- INIT_PROCESS -->
     <br><dt><code>INIT_PROCESS</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- INIT_PROCESS -->
     <br><dt><code>INIT_PROCESS</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- initstate -->
     <br><dt><code>void * initstate (unsigned int </code><var>seed</var><code>, void *</code><var>state</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- initstate_r -->
     <br><dt><code>int initstate_r (unsigned int </code><var>seed</var><code>, char *restrict </code><var>statebuf</var><code>, size_t </code><var>statelen</var><code>, struct random_data *restrict </code><var>buf</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- INLCR -->
     <br><dt><code>tcflag_t INLCR</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- innetgr -->
     <br><dt><code>int innetgr (const char *</code><var>netgroup</var><code>, const char *</code><var>host</var><code>, const char *</code><var>user</var><code>, const char *</code><var>domain</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Netgroup-Membership.html#Netgroup-Membership">Netgroup Membership</a>.

     <!-- ino64_t -->
     <br><dt><code>ino64_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (Unix98):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- ino_t -->
     <br><dt><code>ino_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- INPCK -->
     <br><dt><code>tcflag_t INPCK</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- int -->
     <br><dt><code>long int telldir (DIR *</code><var>dirstream</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (BSD):  <a href="Random-Access-Directory.html#Random-Access-Directory">Random Access Directory</a>.

     <!-- INT_MAX -->
     <br><dt><code>INT_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- INT_MIN -->
     <br><dt><code>INT_MIN</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- ioctl -->
     <br><dt><code>int ioctl (int </code><var>filedes</var><code>, int </code><var>command</var><code>, ...)</code><dd>
<samp><span class="file">sys/ioctl.h</span></samp> (BSD):  <a href="IOCTLs.html#IOCTLs">IOCTLs</a>.

     <!-- _IOFBF -->
     <br><dt><code>int _IOFBF</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- _IOLBF -->
     <br><dt><code>int _IOLBF</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- _IONBF -->
     <br><dt><code>int _IONBF</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- IPPORT_RESERVED -->
     <br><dt><code>int IPPORT_RESERVED</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Ports.html#Ports">Ports</a>.

     <!-- IPPORT_USERRESERVED -->
     <br><dt><code>int IPPORT_USERRESERVED</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Ports.html#Ports">Ports</a>.

     <!-- isalnum -->
     <br><dt><code>int isalnum (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isalpha -->
     <br><dt><code>int isalpha (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isascii -->
     <br><dt><code>int isascii (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (SVID, BSD):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isatty -->
     <br><dt><code>int isatty (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Is-It-a-Terminal.html#Is-It-a-Terminal">Is It a Terminal</a>.

     <!-- isblank -->
     <br><dt><code>int isblank (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- iscntrl -->
     <br><dt><code>int iscntrl (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isdigit -->
     <br><dt><code>int isdigit (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isfinite -->
     <br><dt><code>int isfinite (</code><em>float-type</em> <var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isgraph -->
     <br><dt><code>int isgraph (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isgreater -->
     <br><dt><code>int isgreater (</code><em>real-floating</em> <var>x</var><code>, </code><em>real-floating</em> <var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Comparison-Functions.html#FP-Comparison-Functions">FP Comparison Functions</a>.

     <!-- isgreaterequal -->
     <br><dt><code>int isgreaterequal (</code><em>real-floating</em> <var>x</var><code>, </code><em>real-floating</em> <var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Comparison-Functions.html#FP-Comparison-Functions">FP Comparison Functions</a>.

     <!-- ISIG -->
     <br><dt><code>tcflag_t ISIG</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- isinf -->
     <br><dt><code>int isinf (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isinff -->
     <br><dt><code>int isinff (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isinfl -->
     <br><dt><code>int isinfl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isless -->
     <br><dt><code>int isless (</code><em>real-floating</em> <var>x</var><code>, </code><em>real-floating</em> <var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Comparison-Functions.html#FP-Comparison-Functions">FP Comparison Functions</a>.

     <!-- islessequal -->
     <br><dt><code>int islessequal (</code><em>real-floating</em> <var>x</var><code>, </code><em>real-floating</em> <var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Comparison-Functions.html#FP-Comparison-Functions">FP Comparison Functions</a>.

     <!-- islessgreater -->
     <br><dt><code>int islessgreater (</code><em>real-floating</em> <var>x</var><code>, </code><em>real-floating</em> <var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Comparison-Functions.html#FP-Comparison-Functions">FP Comparison Functions</a>.

     <!-- islower -->
     <br><dt><code>int islower (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isnan -->
     <br><dt><code>int isnan (</code><em>float-type</em> <var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isnan -->
     <br><dt><code>int isnan (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isnanf -->
     <br><dt><code>int isnanf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isnanl -->
     <br><dt><code>int isnanl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- isnormal -->
     <br><dt><code>int isnormal (</code><em>float-type</em> <var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Floating-Point-Classes.html#Floating-Point-Classes">Floating Point Classes</a>.

     <!-- _ISOC99_SOURCE -->
     <br><dt><code>_ISOC99_SOURCE</code><dd>
(GNU):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- isprint -->
     <br><dt><code>int isprint (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- ispunct -->
     <br><dt><code>int ispunct (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- isspace -->
     <br><dt><code>int isspace (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- ISTRIP -->
     <br><dt><code>tcflag_t ISTRIP</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- isunordered -->
     <br><dt><code>int isunordered (</code><em>real-floating</em> <var>x</var><code>, </code><em>real-floating</em> <var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Comparison-Functions.html#FP-Comparison-Functions">FP Comparison Functions</a>.

     <!-- isupper -->
     <br><dt><code>int isupper (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- iswalnum -->
     <br><dt><code>int iswalnum (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswalpha -->
     <br><dt><code>int iswalpha (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswblank -->
     <br><dt><code>int iswblank (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswcntrl -->
     <br><dt><code>int iswcntrl (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswctype -->
     <br><dt><code>int iswctype (wint_t </code><var>wc</var><code>, wctype_t </code><var>desc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswdigit -->
     <br><dt><code>int iswdigit (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswgraph -->
     <br><dt><code>int iswgraph (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswlower -->
     <br><dt><code>int iswlower (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswprint -->
     <br><dt><code>int iswprint (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswpunct -->
     <br><dt><code>int iswpunct (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswspace -->
     <br><dt><code>int iswspace (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswupper -->
     <br><dt><code>int iswupper (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- iswxdigit -->
     <br><dt><code>int iswxdigit (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- isxdigit -->
     <br><dt><code>int isxdigit (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Classification-of-Characters.html#Classification-of-Characters">Classification of Characters</a>.

     <!-- ITIMER_PROF -->
     <br><dt><code>ITIMER_PROF</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="Setting-an-Alarm.html#Setting-an-Alarm">Setting an Alarm</a>.

     <!-- ITIMER_REAL -->
     <br><dt><code>ITIMER_REAL</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="Setting-an-Alarm.html#Setting-an-Alarm">Setting an Alarm</a>.

     <!-- ITIMER_VIRTUAL -->
     <br><dt><code>ITIMER_VIRTUAL</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="Setting-an-Alarm.html#Setting-an-Alarm">Setting an Alarm</a>.

     <!-- IXANY -->
     <br><dt><code>tcflag_t IXANY</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- IXOFF -->
     <br><dt><code>tcflag_t IXOFF</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- IXON -->
     <br><dt><code>tcflag_t IXON</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- j0 -->
     <br><dt><code>double j0 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- j0f -->
     <br><dt><code>float j0f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- j0l -->
     <br><dt><code>long double j0l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- j1 -->
     <br><dt><code>double j1 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- j1f -->
     <br><dt><code>float j1f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- j1l -->
     <br><dt><code>long double j1l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- jmp_buf -->
     <br><dt><code>jmp_buf</code><dd>
<samp><span class="file">setjmp.h</span></samp> (ISO):  <a href="Non_002dLocal-Details.html#Non_002dLocal-Details">Non-Local Details</a>.

     <!-- jn -->
     <br><dt><code>double jn (int n, double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- jnf -->
     <br><dt><code>float jnf (int n, float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- jnl -->
     <br><dt><code>long double jnl (int n, long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- jrand48 -->
     <br><dt><code>long int jrand48 (unsigned short int </code><var>xsubi</var><code>[3])</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- jrand48_r -->
     <br><dt><code>int jrand48_r (unsigned short int </code><var>xsubi</var><code>[3], struct drand48_data *</code><var>buffer</var><code>, long int *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- kill -->
     <br><dt><code>int kill (pid_t </code><var>pid</var><code>, int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Signaling-Another-Process.html#Signaling-Another-Process">Signaling Another Process</a>.

     <!-- killpg -->
     <br><dt><code>int killpg (int </code><var>pgid</var><code>, int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Signaling-Another-Process.html#Signaling-Another-Process">Signaling Another Process</a>.

     <!-- l64a -->
     <br><dt><code>char * l64a (long int </code><var>n</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (XPG):  <a href="Encode-Binary-Data.html#Encode-Binary-Data">Encode Binary Data</a>.

     <!-- labs -->
     <br><dt><code>long int labs (long int </code><var>number</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- LANG -->
     <br><dt><code>LANG</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- LC_ALL -->
     <br><dt><code>LC_ALL</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- LC_COLLATE -->
     <br><dt><code>LC_COLLATE</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- LC_CTYPE -->
     <br><dt><code>LC_CTYPE</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- LC_MESSAGES -->
     <br><dt><code>LC_MESSAGES</code><dd>
<samp><span class="file">locale.h</span></samp> (XOPEN):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- LC_MONETARY -->
     <br><dt><code>LC_MONETARY</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- LC_NUMERIC -->
     <br><dt><code>LC_NUMERIC</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- lcong48 -->
     <br><dt><code>void lcong48 (unsigned short int </code><var>param</var><code>[7])</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- lcong48_r -->
     <br><dt><code>int lcong48_r (unsigned short int </code><var>param</var><code>[7], struct drand48_data *</code><var>buffer</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- L_ctermid -->
     <br><dt><code>int L_ctermid</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.1):  <a href="Identifying-the-Terminal.html#Identifying-the-Terminal">Identifying the Terminal</a>.

     <!-- LC_TIME -->
     <br><dt><code>LC_TIME</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Locale-Categories.html#Locale-Categories">Locale Categories</a>.

     <!-- L_cuserid -->
     <br><dt><code>int L_cuserid</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.1):  <a href="Who-Logged-In.html#Who-Logged-In">Who Logged In</a>.

     <!-- ldexp -->
     <br><dt><code>double ldexp (double </code><var>value</var><code>, int </code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- ldexpf -->
     <br><dt><code>float ldexpf (float </code><var>value</var><code>, int </code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- ldexpl -->
     <br><dt><code>long double ldexpl (long double </code><var>value</var><code>, int </code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- ldiv -->
     <br><dt><code>ldiv_t ldiv (long int </code><var>numerator</var><code>, long int </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- ldiv_t -->
     <br><dt><code>ldiv_t</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- lfind -->
     <br><dt><code>void * lfind (const void *</code><var>key</var><code>, void *</code><var>base</var><code>, size_t *</code><var>nmemb</var><code>, size_t </code><var>size</var><code>, comparison_fn_t </code><var>compar</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Array-Search-Function.html#Array-Search-Function">Array Search Function</a>.

     <!-- lgamma -->
     <br><dt><code>double lgamma (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- lgammaf -->
     <br><dt><code>float lgammaf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- lgammaf_r -->
     <br><dt><code>float lgammaf_r (float </code><var>x</var><code>, int *</code><var>signp</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (XPG):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- lgammal -->
     <br><dt><code>long double lgammal (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- lgammal_r -->
     <br><dt><code>long double lgammal_r (long double </code><var>x</var><code>, int *</code><var>signp</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (XPG):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- lgamma_r -->
     <br><dt><code>double lgamma_r (double </code><var>x</var><code>, int *</code><var>signp</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (XPG):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- L_INCR -->
     <br><dt><code>L_INCR</code><dd>
<samp><span class="file">sys/file.h</span></samp> (BSD):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- LINE_MAX -->
     <br><dt><code>int LINE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Limits.html#Utility-Limits">Utility Limits</a>.

     <!-- link -->
     <br><dt><code>int link (const char *</code><var>oldname</var><code>, const char *</code><var>newname</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Hard-Links.html#Hard-Links">Hard Links</a>.

     <!-- LINK_MAX -->
     <br><dt><code>int LINK_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- lio_listio -->
     <br><dt><code>int lio_listio (int </code><var>mode</var><code>, struct aiocb *const </code><var>list</var><code>[], int </code><var>nent</var><code>, struct sigevent *</code><var>sig</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Asynchronous-Reads_002fWrites.html#Asynchronous-Reads_002fWrites">Asynchronous Reads/Writes</a>.

     <!-- lio_listio64 -->
     <br><dt><code>int lio_listio64 (int </code><var>mode</var><code>, struct aiocb *const </code><var>list</var><code>, int </code><var>nent</var><code>, struct sigevent *</code><var>sig</var><code>)</code><dd>
<samp><span class="file">aio.h</span></samp> (Unix98):  <a href="Asynchronous-Reads_002fWrites.html#Asynchronous-Reads_002fWrites">Asynchronous Reads/Writes</a>.

     <!-- listen -->
     <br><dt><code>int listen (int </code><var>socket</var><code>, int </code><var>n</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Listening.html#Listening">Listening</a>.

     <!-- llabs -->
     <br><dt><code>long long int llabs (long long int </code><var>number</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Absolute-Value.html#Absolute-Value">Absolute Value</a>.

     <!-- lldiv -->
     <br><dt><code>lldiv_t lldiv (long long int </code><var>numerator</var><code>, long long int </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- lldiv_t -->
     <br><dt><code>lldiv_t</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Integer-Division.html#Integer-Division">Integer Division</a>.

     <!-- llrint -->
     <br><dt><code>long long int llrint (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- llrintf -->
     <br><dt><code>long long int llrintf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- llrintl -->
     <br><dt><code>long long int llrintl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- llround -->
     <br><dt><code>long long int llround (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- llroundf -->
     <br><dt><code>long long int llroundf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- llroundl -->
     <br><dt><code>long long int llroundl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- localeconv -->
     <br><dt><code>struct lconv * localeconv (void)</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="The-Lame-Way-to-Locale-Data.html#The-Lame-Way-to-Locale-Data">The Lame Way to Locale Data</a>.

     <!-- localtime -->
     <br><dt><code>struct tm * localtime (const time_t *</code><var>time</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- localtime_r -->
     <br><dt><code>struct tm * localtime_r (const time_t *</code><var>time</var><code>, struct tm *</code><var>resultp</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1c):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- log -->
     <br><dt><code>double log (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log10 -->
     <br><dt><code>double log10 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log10f -->
     <br><dt><code>float log10f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log10l -->
     <br><dt><code>long double log10l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log1p -->
     <br><dt><code>double log1p (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log1pf -->
     <br><dt><code>float log1pf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log1pl -->
     <br><dt><code>long double log1pl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log2 -->
     <br><dt><code>double log2 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log2f -->
     <br><dt><code>float log2f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- log2l -->
     <br><dt><code>long double log2l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- logb -->
     <br><dt><code>double logb (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- logbf -->
     <br><dt><code>float logbf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- logbl -->
     <br><dt><code>long double logbl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- logf -->
     <br><dt><code>float logf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- login -->
     <br><dt><code>void login (const struct utmp *</code><var>entry</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (BSD):  <a href="Logging-In-and-Out.html#Logging-In-and-Out">Logging In and Out</a>.

     <!-- LOGIN_PROCESS -->
     <br><dt><code>LOGIN_PROCESS</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- LOGIN_PROCESS -->
     <br><dt><code>LOGIN_PROCESS</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- login_tty -->
     <br><dt><code>int login_tty (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (BSD):  <a href="Logging-In-and-Out.html#Logging-In-and-Out">Logging In and Out</a>.

     <!-- logl -->
     <br><dt><code>long double logl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- logout -->
     <br><dt><code>int logout (const char *</code><var>ut_line</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (BSD):  <a href="Logging-In-and-Out.html#Logging-In-and-Out">Logging In and Out</a>.

     <!-- logwtmp -->
     <br><dt><code>void logwtmp (const char *</code><var>ut_line</var><code>, const char *</code><var>ut_name</var><code>, const char *</code><var>ut_host</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (BSD):  <a href="Logging-In-and-Out.html#Logging-In-and-Out">Logging In and Out</a>.

     <!-- longjmp -->
     <br><dt><code>void longjmp (jmp_buf </code><var>state</var><code>, int </code><var>value</var><code>)</code><dd>
<samp><span class="file">setjmp.h</span></samp> (ISO):  <a href="Non_002dLocal-Details.html#Non_002dLocal-Details">Non-Local Details</a>.

     <!-- LONG_LONG_MAX -->
     <br><dt><code>LONG_LONG_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (GNU):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- LONG_LONG_MIN -->
     <br><dt><code>LONG_LONG_MIN</code><dd>
<samp><span class="file">limits.h</span></samp> (GNU):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- LONG_MAX -->
     <br><dt><code>LONG_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- LONG_MIN -->
     <br><dt><code>LONG_MIN</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- lrand48 -->
     <br><dt><code>long int lrand48 (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- lrand48_r -->
     <br><dt><code>int lrand48_r (struct drand48_data *</code><var>buffer</var><code>, double *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- lrint -->
     <br><dt><code>long int lrint (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- lrintf -->
     <br><dt><code>long int lrintf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- lrintl -->
     <br><dt><code>long int lrintl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- lround -->
     <br><dt><code>long int lround (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- lroundf -->
     <br><dt><code>long int lroundf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- lroundl -->
     <br><dt><code>long int lroundl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- lsearch -->
     <br><dt><code>void * lsearch (const void *</code><var>key</var><code>, void *</code><var>base</var><code>, size_t *</code><var>nmemb</var><code>, size_t </code><var>size</var><code>, comparison_fn_t </code><var>compar</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Array-Search-Function.html#Array-Search-Function">Array Search Function</a>.

     <!-- lseek -->
     <br><dt><code>off_t lseek (int </code><var>filedes</var><code>, off_t </code><var>offset</var><code>, int </code><var>whence</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="File-Position-Primitive.html#File-Position-Primitive">File Position Primitive</a>.

     <!-- lseek64 -->
     <br><dt><code>off64_t lseek64 (int </code><var>filedes</var><code>, off64_t </code><var>offset</var><code>, int </code><var>whence</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="File-Position-Primitive.html#File-Position-Primitive">File Position Primitive</a>.

     <!-- L_SET -->
     <br><dt><code>L_SET</code><dd>
<samp><span class="file">sys/file.h</span></samp> (BSD):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- lstat -->
     <br><dt><code>int lstat (const char *</code><var>filename</var><code>, struct stat *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Reading-Attributes.html#Reading-Attributes">Reading Attributes</a>.

     <!-- lstat64 -->
     <br><dt><code>int lstat64 (const char *</code><var>filename</var><code>, struct stat64 *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (Unix98):  <a href="Reading-Attributes.html#Reading-Attributes">Reading Attributes</a>.

     <!-- L_tmpnam -->
     <br><dt><code>int L_tmpnam</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- lutimes -->
     <br><dt><code>int lutimes (const char *</code><var>filename</var><code>, struct timeval </code><var>tvp</var><tt>[2]</tt><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="File-Times.html#File-Times">File Times</a>.

     <!-- L_XTND -->
     <br><dt><code>L_XTND</code><dd>
<samp><span class="file">sys/file.h</span></samp> (BSD):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- madvise -->
     <br><dt><code>int madvise (void *</code><var>addr</var><code>, size_t </code><var>length</var><code>, int </code><var>advice</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX):  <a href="Memory_002dmapped-I_002fO.html#Memory_002dmapped-I_002fO">Memory-mapped I/O</a>.

     <!-- makecontext -->
     <br><dt><code>void makecontext (ucontext_t *</code><var>ucp</var><code>, void (*</code><var>func</var><code>) (void), int </code><var>argc</var><code>, ...)</code><dd>
<samp><span class="file">ucontext.h</span></samp> (SVID):  <a href="System-V-contexts.html#System-V-contexts">System V contexts</a>.

     <!-- mallinfo -->
     <br><dt><code>struct mallinfo mallinfo (void)</code><dd>
<samp><span class="file">malloc.h</span></samp> (SVID):  <a href="Statistics-of-Malloc.html#Statistics-of-Malloc">Statistics of Malloc</a>.

     <!-- malloc -->
     <br><dt><code>void * malloc (size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">malloc.h</span></samp>, <samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Basic-Allocation.html#Basic-Allocation">Basic Allocation</a>.

     <!-- __malloc_hook -->
     <br><dt><code>__malloc_hook</code><dd>
<samp><span class="file">malloc.h</span></samp> (GNU):  <a href="Hooks-for-Malloc.html#Hooks-for-Malloc">Hooks for Malloc</a>.

     <!-- __malloc_initialize_hook -->
     <br><dt><code>__malloc_initialize_hook</code><dd>
<samp><span class="file">malloc.h</span></samp> (GNU):  <a href="Hooks-for-Malloc.html#Hooks-for-Malloc">Hooks for Malloc</a>.

     <!-- MAX_CANON -->
     <br><dt><code>int MAX_CANON</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- MAX_INPUT -->
     <br><dt><code>int MAX_INPUT</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- MAXNAMLEN -->
     <br><dt><code>int MAXNAMLEN</code><dd>
<samp><span class="file">dirent.h</span></samp> (BSD):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- MAXSYMLINKS -->
     <br><dt><code>int MAXSYMLINKS</code><dd>
<samp><span class="file">sys/param.h</span></samp> (BSD):  <a href="Symbolic-Links.html#Symbolic-Links">Symbolic Links</a>.

     <!-- MB_CUR_MAX -->
     <br><dt><code>int MB_CUR_MAX</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Selecting-the-Conversion.html#Selecting-the-Conversion">Selecting the Conversion</a>.

     <!-- mblen -->
     <br><dt><code>int mblen (const char *</code><var>string</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Non_002dreentrant-Character-Conversion.html#Non_002dreentrant-Character-Conversion">Non-reentrant Character Conversion</a>.

     <!-- MB_LEN_MAX -->
     <br><dt><code>int MB_LEN_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Selecting-the-Conversion.html#Selecting-the-Conversion">Selecting the Conversion</a>.

     <!-- mbrlen -->
     <br><dt><code>size_t mbrlen (const char *restrict </code><var>s</var><code>, size_t </code><var>n</var><code>, mbstate_t *</code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Converting-a-Character.html#Converting-a-Character">Converting a Character</a>.

     <!-- mbrtowc -->
     <br><dt><code>size_t mbrtowc (wchar_t *restrict </code><var>pwc</var><code>, const char *restrict </code><var>s</var><code>, size_t </code><var>n</var><code>, mbstate_t *restrict </code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Converting-a-Character.html#Converting-a-Character">Converting a Character</a>.

     <!-- mbsinit -->
     <br><dt><code>int mbsinit (const mbstate_t *</code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Keeping-the-state.html#Keeping-the-state">Keeping the state</a>.

     <!-- mbsnrtowcs -->
     <br><dt><code>size_t mbsnrtowcs (wchar_t *restrict </code><var>dst</var><code>, const char **restrict </code><var>src</var><code>, size_t </code><var>nmc</var><code>, size_t </code><var>len</var><code>, mbstate_t *restrict </code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Converting-Strings.html#Converting-Strings">Converting Strings</a>.

     <!-- mbsrtowcs -->
     <br><dt><code>size_t mbsrtowcs (wchar_t *restrict </code><var>dst</var><code>, const char **restrict </code><var>src</var><code>, size_t </code><var>len</var><code>, mbstate_t *restrict </code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Converting-Strings.html#Converting-Strings">Converting Strings</a>.

     <!-- mbstate_t -->
     <br><dt><code>mbstate_t</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Keeping-the-state.html#Keeping-the-state">Keeping the state</a>.

     <!-- mbstowcs -->
     <br><dt><code>size_t mbstowcs (wchar_t *</code><var>wstring</var><code>, const char *</code><var>string</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Non_002dreentrant-String-Conversion.html#Non_002dreentrant-String-Conversion">Non-reentrant String Conversion</a>.

     <!-- mbtowc -->
     <br><dt><code>int mbtowc (wchar_t *restrict </code><var>result</var><code>, const char *restrict </code><var>string</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Non_002dreentrant-Character-Conversion.html#Non_002dreentrant-Character-Conversion">Non-reentrant Character Conversion</a>.

     <!-- mcheck -->
     <br><dt><code>int mcheck (void (*</code><var>abortfn</var><code>) (enum mcheck_status </code><var>status</var><code>))</code><dd>
<samp><span class="file">mcheck.h</span></samp> (GNU):  <a href="Heap-Consistency-Checking.html#Heap-Consistency-Checking">Heap Consistency Checking</a>.

     <!-- MDMBUF -->
     <br><dt><code>tcflag_t MDMBUF</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- memalign -->
     <br><dt><code>void * memalign (size_t </code><var>boundary</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">malloc.h</span></samp> (BSD):  <a href="Aligned-Memory-Blocks.html#Aligned-Memory-Blocks">Aligned Memory Blocks</a>.

     <!-- __memalign_hook -->
     <br><dt><code>__memalign_hook</code><dd>
<samp><span class="file">malloc.h</span></samp> (GNU):  <a href="Hooks-for-Malloc.html#Hooks-for-Malloc">Hooks for Malloc</a>.

     <!-- memccpy -->
     <br><dt><code>void * memccpy (void *restrict </code><var>to</var><code>, const void *restrict </code><var>from</var><code>, int </code><var>c</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (SVID):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- memchr -->
     <br><dt><code>void * memchr (const void *</code><var>block</var><code>, int </code><var>c</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- memcmp -->
     <br><dt><code>int memcmp (const void *</code><var>a1</var><code>, const void *</code><var>a2</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- memcpy -->
     <br><dt><code>void * memcpy (void *restrict </code><var>to</var><code>, const void *restrict </code><var>from</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- memfrob -->
     <br><dt><code>void * memfrob (void *</code><var>mem</var><code>, size_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Trivial-Encryption.html#Trivial-Encryption">Trivial Encryption</a>.

     <!-- memmem -->
     <br><dt><code>void * memmem (const void *</code><var>haystack</var><code>, size_t </code><var>haystack-len</var><code>,<br>const void *</code><var>needle</var><code>, size_t </code><var>needle-len</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- memmove -->
     <br><dt><code>void * memmove (void *</code><var>to</var><code>, const void *</code><var>from</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- mempcpy -->
     <br><dt><code>void * mempcpy (void *restrict </code><var>to</var><code>, const void *restrict </code><var>from</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- memrchr -->
     <br><dt><code>void * memrchr (const void *</code><var>block</var><code>, int </code><var>c</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- memset -->
     <br><dt><code>void * memset (void *</code><var>block</var><code>, int </code><var>c</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- mkdir -->
     <br><dt><code>int mkdir (const char *</code><var>filename</var><code>, mode_t </code><var>mode</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Creating-Directories.html#Creating-Directories">Creating Directories</a>.

     <!-- mkdtemp -->
     <br><dt><code>char * mkdtemp (char *</code><var>template</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- mkfifo -->
     <br><dt><code>int mkfifo (const char *</code><var>filename</var><code>, mode_t </code><var>mode</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="FIFO-Special-Files.html#FIFO-Special-Files">FIFO Special Files</a>.

     <!-- mknod -->
     <br><dt><code>int mknod (const char *</code><var>filename</var><code>, int </code><var>mode</var><code>, int </code><var>dev</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Making-Special-Files.html#Making-Special-Files">Making Special Files</a>.

     <!-- mkstemp -->
     <br><dt><code>int mkstemp (char *</code><var>template</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- mktemp -->
     <br><dt><code>char * mktemp (char *</code><var>template</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (Unix):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- mktime -->
     <br><dt><code>time_t mktime (struct tm *</code><var>brokentime</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- mlock -->
     <br><dt><code>int mlock (const void *</code><var>addr</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX.1b):  <a href="Page-Lock-Functions.html#Page-Lock-Functions">Page Lock Functions</a>.

     <!-- mlockall -->
     <br><dt><code>int mlockall (int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX.1b):  <a href="Page-Lock-Functions.html#Page-Lock-Functions">Page Lock Functions</a>.

     <!-- mmap -->
     <br><dt><code>void * mmap (void *</code><var>address</var><code>, size_t </code><var>length</var><code>,int </code><var>protect</var><code>, int </code><var>flags</var><code>, int </code><var>filedes</var><code>, off_t </code><var>offset</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX):  <a href="Memory_002dmapped-I_002fO.html#Memory_002dmapped-I_002fO">Memory-mapped I/O</a>.

     <!-- mmap64 -->
     <br><dt><code>void * mmap64 (void *</code><var>address</var><code>, size_t </code><var>length</var><code>,int </code><var>protect</var><code>, int </code><var>flags</var><code>, int </code><var>filedes</var><code>, off64_t </code><var>offset</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (LFS):  <a href="Memory_002dmapped-I_002fO.html#Memory_002dmapped-I_002fO">Memory-mapped I/O</a>.

     <!-- mode_t -->
     <br><dt><code>mode_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- modf -->
     <br><dt><code>double modf (double </code><var>value</var><code>, double *</code><var>integer-part</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- modff -->
     <br><dt><code>float modff (float </code><var>value</var><code>, float *</code><var>integer-part</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- modfl -->
     <br><dt><code>long double modfl (long double </code><var>value</var><code>, long double *</code><var>integer-part</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- mount -->
     <br><dt><code>int mount (const char *</code><var>special_file</var><code>, const char *</code><var>dir</var><code>, const char *</code><var>fstype</var><code>, unsigned long int </code><var>options</var><code>, const void *</code><var>data</var><code>)</code><dd>
<samp><span class="file">sys/mount.h</span></samp> (SVID, BSD):  <a href="Mount_002dUnmount_002dRemount.html#Mount_002dUnmount_002dRemount">Mount-Unmount-Remount</a>.

     <!-- mrand48 -->
     <br><dt><code>long int mrand48 (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- mrand48_r -->
     <br><dt><code>int mrand48_r (struct drand48_data *</code><var>buffer</var><code>, double *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- mremap -->
     <br><dt><code>void * mremap (void *</code><var>address</var><code>, size_t </code><var>length</var><code>, size_t </code><var>new_length</var><code>, int </code><var>flag</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (GNU):  <a href="Memory_002dmapped-I_002fO.html#Memory_002dmapped-I_002fO">Memory-mapped I/O</a>.

     <!-- MSG_DONTROUTE -->
     <br><dt><code>int MSG_DONTROUTE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket-Data-Options.html#Socket-Data-Options">Socket Data Options</a>.

     <!-- MSG_OOB -->
     <br><dt><code>int MSG_OOB</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket-Data-Options.html#Socket-Data-Options">Socket Data Options</a>.

     <!-- MSG_PEEK -->
     <br><dt><code>int MSG_PEEK</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket-Data-Options.html#Socket-Data-Options">Socket Data Options</a>.

     <!-- msync -->
     <br><dt><code>int msync (void *</code><var>address</var><code>, size_t </code><var>length</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX):  <a href="Memory_002dmapped-I_002fO.html#Memory_002dmapped-I_002fO">Memory-mapped I/O</a>.

     <!-- mtrace -->
     <br><dt><code>void mtrace (void)</code><dd>
<samp><span class="file">mcheck.h</span></samp> (GNU):  <a href="Tracing-malloc.html#Tracing-malloc">Tracing malloc</a>.

     <!-- munlock -->
     <br><dt><code>int munlock (const void *</code><var>addr</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX.1b):  <a href="Page-Lock-Functions.html#Page-Lock-Functions">Page Lock Functions</a>.

     <!-- munlockall -->
     <br><dt><code>int munlockall (void)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX.1b):  <a href="Page-Lock-Functions.html#Page-Lock-Functions">Page Lock Functions</a>.

     <!-- munmap -->
     <br><dt><code>int munmap (void *</code><var>addr</var><code>, size_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">sys/mman.h</span></samp> (POSIX):  <a href="Memory_002dmapped-I_002fO.html#Memory_002dmapped-I_002fO">Memory-mapped I/O</a>.

     <!-- muntrace -->
     <br><dt><code>void muntrace (void)</code><dd>
<samp><span class="file">mcheck.h</span></samp> (GNU):  <a href="Tracing-malloc.html#Tracing-malloc">Tracing malloc</a>.

     <!-- NAME_MAX -->
     <br><dt><code>int NAME_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- NAN -->
     <br><dt><code>float NAN</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Infinity-and-NaN.html#Infinity-and-NaN">Infinity and NaN</a>.

     <!-- nan -->
     <br><dt><code>double nan (const char *</code><var>tagp</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nanf -->
     <br><dt><code>float nanf (const char *</code><var>tagp</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nanl -->
     <br><dt><code>long double nanl (const char *</code><var>tagp</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nanosleep -->
     <br><dt><code>int nanosleep (const struct timespec *</code><var>requested_time</var><code>, struct timespec *</code><var>remaining</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1):  <a href="Sleeping.html#Sleeping">Sleeping</a>.

     <!-- NCCS -->
     <br><dt><code>int NCCS</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Data-Types.html#Mode-Data-Types">Mode Data Types</a>.

     <!-- nearbyint -->
     <br><dt><code>double nearbyint (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- nearbyintf -->
     <br><dt><code>float nearbyintf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- nearbyintl -->
     <br><dt><code>long double nearbyintl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- NEW_TIME -->
     <br><dt><code>NEW_TIME</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- NEW_TIME -->
     <br><dt><code>NEW_TIME</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- nextafter -->
     <br><dt><code>double nextafter (double </code><var>x</var><code>, double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nextafterf -->
     <br><dt><code>float nextafterf (float </code><var>x</var><code>, float </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nextafterl -->
     <br><dt><code>long double nextafterl (long double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nexttoward -->
     <br><dt><code>double nexttoward (double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nexttowardf -->
     <br><dt><code>float nexttowardf (float </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nexttowardl -->
     <br><dt><code>long double nexttowardl (long double </code><var>x</var><code>, long double </code><var>y</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- nftw -->
     <br><dt><code>int nftw (const char *</code><var>filename</var><code>, __nftw_func_t </code><var>func</var><code>, int </code><var>descriptors</var><code>, int </code><var>flag</var><code>)</code><dd>
<samp><span class="file">ftw.h</span></samp> (XPG4.2):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- nftw64 -->
     <br><dt><code>int nftw64 (const char *</code><var>filename</var><code>, __nftw64_func_t </code><var>func</var><code>, int </code><var>descriptors</var><code>, int </code><var>flag</var><code>)</code><dd>
<samp><span class="file">ftw.h</span></samp> (Unix98):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- __nftw64_func_t -->
     <br><dt><code>__nftw64_func_t</code><dd>
<samp><span class="file">ftw.h</span></samp> (GNU):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- __nftw_func_t -->
     <br><dt><code>__nftw_func_t</code><dd>
<samp><span class="file">ftw.h</span></samp> (GNU):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- ngettext -->
     <br><dt><code>char * ngettext (const char *</code><var>msgid1</var><code>, const char *</code><var>msgid2</var><code>, unsigned long int </code><var>n</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Advanced-gettext-functions.html#Advanced-gettext-functions">Advanced gettext functions</a>.

     <!-- NGROUPS_MAX -->
     <br><dt><code>int NGROUPS_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- nice -->
     <br><dt><code>int nice (int </code><var>increment</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- nlink_t -->
     <br><dt><code>nlink_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- nl_langinfo -->
     <br><dt><code>char * nl_langinfo (nl_item </code><var>item</var><code>)</code><dd>
<samp><span class="file">langinfo.h</span></samp> (XOPEN):  <a href="The-Elegant-and-Fast-Way.html#The-Elegant-and-Fast-Way">The Elegant and Fast Way</a>.

     <!-- NO_ADDRESS -->
     <br><dt><code>NO_ADDRESS</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- NOFLSH -->
     <br><dt><code>tcflag_t NOFLSH</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- NOKERNINFO -->
     <br><dt><code>tcflag_t NOKERNINFO</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- NO_RECOVERY -->
     <br><dt><code>NO_RECOVERY</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- nrand48 -->
     <br><dt><code>long int nrand48 (unsigned short int </code><var>xsubi</var><code>[3])</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- nrand48_r -->
     <br><dt><code>int nrand48_r (unsigned short int </code><var>xsubi</var><code>[3], struct drand48_data *</code><var>buffer</var><code>, long int *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- NSIG -->
     <br><dt><code>int NSIG</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Standard-Signals.html#Standard-Signals">Standard Signals</a>.

     <!-- ntohl -->
     <br><dt><code>uint32_t ntohl (uint32_t </code><var>netlong</var><code>)</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Byte-Order.html#Byte-Order">Byte Order</a>.

     <!-- ntohs -->
     <br><dt><code>uint16_t ntohs (uint16_t </code><var>netshort</var><code>)</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Byte-Order.html#Byte-Order">Byte Order</a>.

     <!-- ntp_adjtime -->
     <br><dt><code>int ntp_adjtime (struct timex *</code><var>tptr</var><code>)</code><dd>
<samp><span class="file">sys/timex.h</span></samp> (GNU):  <a href="High-Accuracy-Clock.html#High-Accuracy-Clock">High Accuracy Clock</a>.

     <!-- ntp_gettime -->
     <br><dt><code>int ntp_gettime (struct ntptimeval *</code><var>tptr</var><code>)</code><dd>
<samp><span class="file">sys/timex.h</span></samp> (GNU):  <a href="High-Accuracy-Clock.html#High-Accuracy-Clock">High Accuracy Clock</a>.

     <!-- NULL -->
     <br><dt><code>void * NULL</code><dd>
<samp><span class="file">stddef.h</span></samp> (ISO):  <a href="Null-Pointer-Constant.html#Null-Pointer-Constant">Null Pointer Constant</a>.

     <!-- O_ACCMODE -->
     <br><dt><code>int O_ACCMODE</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Access-Modes.html#Access-Modes">Access Modes</a>.

     <!-- O_APPEND -->
     <br><dt><code>int O_APPEND</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Operating-Modes.html#Operating-Modes">Operating Modes</a>.

     <!-- O_ASYNC -->
     <br><dt><code>int O_ASYNC</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Operating-Modes.html#Operating-Modes">Operating Modes</a>.

     <!-- obstack_1grow -->
     <br><dt><code>void obstack_1grow (struct obstack *</code><var>obstack-ptr</var><code>, char </code><var>c</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_1grow_fast -->
     <br><dt><code>void obstack_1grow_fast (struct obstack *</code><var>obstack-ptr</var><code>, char </code><var>c</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Extra-Fast-Growing.html#Extra-Fast-Growing">Extra Fast Growing</a>.

     <!-- obstack_alignment_mask -->
     <br><dt><code>int obstack_alignment_mask (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Obstacks-Data-Alignment.html#Obstacks-Data-Alignment">Obstacks Data Alignment</a>.

     <!-- obstack_alloc -->
     <br><dt><code>void * obstack_alloc (struct obstack *</code><var>obstack-ptr</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Allocation-in-an-Obstack.html#Allocation-in-an-Obstack">Allocation in an Obstack</a>.

     <!-- obstack_alloc_failed_handler -->
     <br><dt><code>obstack_alloc_failed_handler</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Preparing-for-Obstacks.html#Preparing-for-Obstacks">Preparing for Obstacks</a>.

     <!-- obstack_base -->
     <br><dt><code>void * obstack_base (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Status-of-an-Obstack.html#Status-of-an-Obstack">Status of an Obstack</a>.

     <!-- obstack_blank -->
     <br><dt><code>void obstack_blank (struct obstack *</code><var>obstack-ptr</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_blank_fast -->
     <br><dt><code>void obstack_blank_fast (struct obstack *</code><var>obstack-ptr</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Extra-Fast-Growing.html#Extra-Fast-Growing">Extra Fast Growing</a>.

     <!-- obstack_chunk_size -->
     <br><dt><code>int obstack_chunk_size (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Obstack-Chunks.html#Obstack-Chunks">Obstack Chunks</a>.

     <!-- obstack_copy -->
     <br><dt><code>void * obstack_copy (struct obstack *</code><var>obstack-ptr</var><code>, void *</code><var>address</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Allocation-in-an-Obstack.html#Allocation-in-an-Obstack">Allocation in an Obstack</a>.

     <!-- obstack_copy0 -->
     <br><dt><code>void * obstack_copy0 (struct obstack *</code><var>obstack-ptr</var><code>, void *</code><var>address</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Allocation-in-an-Obstack.html#Allocation-in-an-Obstack">Allocation in an Obstack</a>.

     <!-- obstack_finish -->
     <br><dt><code>void * obstack_finish (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_free -->
     <br><dt><code>void obstack_free (struct obstack *</code><var>obstack-ptr</var><code>, void *</code><var>object</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Freeing-Obstack-Objects.html#Freeing-Obstack-Objects">Freeing Obstack Objects</a>.

     <!-- obstack_grow -->
     <br><dt><code>void obstack_grow (struct obstack *</code><var>obstack-ptr</var><code>, void *</code><var>data</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_grow0 -->
     <br><dt><code>void obstack_grow0 (struct obstack *</code><var>obstack-ptr</var><code>, void *</code><var>data</var><code>, int </code><var>size</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_init -->
     <br><dt><code>int obstack_init (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Preparing-for-Obstacks.html#Preparing-for-Obstacks">Preparing for Obstacks</a>.

     <!-- obstack_int_grow -->
     <br><dt><code>void obstack_int_grow (struct obstack *</code><var>obstack-ptr</var><code>, int </code><var>data</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_int_grow_fast -->
     <br><dt><code>void obstack_int_grow_fast (struct obstack *</code><var>obstack-ptr</var><code>, int </code><var>data</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Extra-Fast-Growing.html#Extra-Fast-Growing">Extra Fast Growing</a>.

     <!-- obstack_next_free -->
     <br><dt><code>void * obstack_next_free (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Status-of-an-Obstack.html#Status-of-an-Obstack">Status of an Obstack</a>.

     <!-- obstack_object_size -->
     <br><dt><code>int obstack_object_size (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_object_size -->
     <br><dt><code>int obstack_object_size (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Status-of-an-Obstack.html#Status-of-an-Obstack">Status of an Obstack</a>.

     <!-- obstack_printf -->
     <br><dt><code>int obstack_printf (struct obstack *</code><var>obstack</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Dynamic-Output.html#Dynamic-Output">Dynamic Output</a>.

     <!-- obstack_ptr_grow -->
     <br><dt><code>void obstack_ptr_grow (struct obstack *</code><var>obstack-ptr</var><code>, void *</code><var>data</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Growing-Objects.html#Growing-Objects">Growing Objects</a>.

     <!-- obstack_ptr_grow_fast -->
     <br><dt><code>void obstack_ptr_grow_fast (struct obstack *</code><var>obstack-ptr</var><code>, void *</code><var>data</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Extra-Fast-Growing.html#Extra-Fast-Growing">Extra Fast Growing</a>.

     <!-- obstack_room -->
     <br><dt><code>int obstack_room (struct obstack *</code><var>obstack-ptr</var><code>)</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Extra-Fast-Growing.html#Extra-Fast-Growing">Extra Fast Growing</a>.

     <!-- obstack_vprintf -->
     <br><dt><code>int obstack_vprintf (struct obstack *</code><var>obstack</var><code>, const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- O_CREAT -->
     <br><dt><code>int O_CREAT</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- O_EXCL -->
     <br><dt><code>int O_EXCL</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- O_EXEC -->
     <br><dt><code>int O_EXEC</code><dd>
<samp><span class="file">fcntl.h</span></samp> (GNU):  <a href="Access-Modes.html#Access-Modes">Access Modes</a>.

     <!-- O_EXLOCK -->
     <br><dt><code>int O_EXLOCK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- off64_t -->
     <br><dt><code>off64_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (Unix98):  <a href="File-Position-Primitive.html#File-Position-Primitive">File Position Primitive</a>.

     <!-- offsetof -->
     <br><dt><code>size_t offsetof (</code><var>type</var><code>, </code><var>member</var><code>)</code><dd>
<samp><span class="file">stddef.h</span></samp> (ISO):  <a href="Structure-Measurement.html#Structure-Measurement">Structure Measurement</a>.

     <!-- off_t -->
     <br><dt><code>off_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="File-Position-Primitive.html#File-Position-Primitive">File Position Primitive</a>.

     <!-- O_FSYNC -->
     <br><dt><code>int O_FSYNC</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Operating-Modes.html#Operating-Modes">Operating Modes</a>.

     <!-- O_IGNORE_CTTY -->
     <br><dt><code>int O_IGNORE_CTTY</code><dd>
<samp><span class="file">fcntl.h</span></samp> (GNU):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- OLD_TIME -->
     <br><dt><code>OLD_TIME</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- OLD_TIME -->
     <br><dt><code>OLD_TIME</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- O_NDELAY -->
     <br><dt><code>int O_NDELAY</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Operating-Modes.html#Operating-Modes">Operating Modes</a>.

     <!-- on_exit -->
     <br><dt><code>int on_exit (void (*</code><var>function</var><code>)(int </code><var>status</var><code>, void *</code><var>arg</var><code>), void *</code><var>arg</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SunOS):  <a href="Cleanups-on-Exit.html#Cleanups-on-Exit">Cleanups on Exit</a>.

     <!-- ONLCR -->
     <br><dt><code>tcflag_t ONLCR</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Output-Modes.html#Output-Modes">Output Modes</a>.

     <!-- O_NOATIME -->
     <br><dt><code>int O_NOATIME</code><dd>
<samp><span class="file">fcntl.h</span></samp> (GNU):  <a href="Operating-Modes.html#Operating-Modes">Operating Modes</a>.

     <!-- O_NOCTTY -->
     <br><dt><code>int O_NOCTTY</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- ONOEOT -->
     <br><dt><code>tcflag_t ONOEOT</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Output-Modes.html#Output-Modes">Output Modes</a>.

     <!-- O_NOLINK -->
     <br><dt><code>int O_NOLINK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (GNU):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- O_NONBLOCK -->
     <br><dt><code>int O_NONBLOCK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- O_NONBLOCK -->
     <br><dt><code>int O_NONBLOCK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Operating-Modes.html#Operating-Modes">Operating Modes</a>.

     <!-- O_NOTRANS -->
     <br><dt><code>int O_NOTRANS</code><dd>
<samp><span class="file">fcntl.h</span></samp> (GNU):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- open -->
     <br><dt><code>int open (const char *</code><var>filename</var><code>, int </code><var>flags</var><code>[, mode_t </code><var>mode</var><code>])</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Opening-and-Closing-Files.html#Opening-and-Closing-Files">Opening and Closing Files</a>.

     <!-- open64 -->
     <br><dt><code>int open64 (const char *</code><var>filename</var><code>, int </code><var>flags</var><code>[, mode_t </code><var>mode</var><code>])</code><dd>
<samp><span class="file">fcntl.h</span></samp> (Unix98):  <a href="Opening-and-Closing-Files.html#Opening-and-Closing-Files">Opening and Closing Files</a>.

     <!-- opendir -->
     <br><dt><code>DIR * opendir (const char *</code><var>dirname</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (POSIX.1):  <a href="Opening-a-Directory.html#Opening-a-Directory">Opening a Directory</a>.

     <!-- openlog -->
     <br><dt><code>void openlog (const char *</code><var>ident</var><code>, int </code><var>option</var><code>, int </code><var>facility</var><code>)</code><dd>
<samp><span class="file">syslog.h</span></samp> (BSD):  <a href="openlog.html#openlog">openlog</a>.

     <!-- OPEN_MAX -->
     <br><dt><code>int OPEN_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- open_memstream -->
     <br><dt><code>FILE * open_memstream (char **</code><var>ptr</var><code>, size_t *</code><var>sizeloc</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="String-Streams.html#String-Streams">String Streams</a>.

     <!-- open_obstack_stream -->
     <br><dt><code>FILE * open_obstack_stream (struct obstack *</code><var>obstack</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Obstack-Streams.html#Obstack-Streams">Obstack Streams</a>.

     <!-- openpty -->
     <br><dt><code>int openpty (int *</code><var>amaster</var><code>, int *</code><var>aslave</var><code>, char *</code><var>name</var><code>, const struct termios *</code><var>termp</var><code>, const struct winsize *</code><var>winp</var><code>)</code><dd>
<samp><span class="file">pty.h</span></samp> (BSD):  <a href="Pseudo_002dTerminal-Pairs.html#Pseudo_002dTerminal-Pairs">Pseudo-Terminal Pairs</a>.

     <!-- OPOST -->
     <br><dt><code>tcflag_t OPOST</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Output-Modes.html#Output-Modes">Output Modes</a>.

     <!-- optarg -->
     <br><dt><code>char * optarg</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Using-Getopt.html#Using-Getopt">Using Getopt</a>.

     <!-- opterr -->
     <br><dt><code>int opterr</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Using-Getopt.html#Using-Getopt">Using Getopt</a>.

     <!-- optind -->
     <br><dt><code>int optind</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Using-Getopt.html#Using-Getopt">Using Getopt</a>.

     <!-- OPTION_ALIAS -->
     <br><dt><code>OPTION_ALIAS</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Option-Flags.html#Argp-Option-Flags">Argp Option Flags</a>.

     <!-- OPTION_ARG_OPTIONAL -->
     <br><dt><code>OPTION_ARG_OPTIONAL</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Option-Flags.html#Argp-Option-Flags">Argp Option Flags</a>.

     <!-- OPTION_DOC -->
     <br><dt><code>OPTION_DOC</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Option-Flags.html#Argp-Option-Flags">Argp Option Flags</a>.

     <!-- OPTION_HIDDEN -->
     <br><dt><code>OPTION_HIDDEN</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Option-Flags.html#Argp-Option-Flags">Argp Option Flags</a>.

     <!-- OPTION_NO_USAGE -->
     <br><dt><code>OPTION_NO_USAGE</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Option-Flags.html#Argp-Option-Flags">Argp Option Flags</a>.

     <!-- optopt -->
     <br><dt><code>int optopt</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Using-Getopt.html#Using-Getopt">Using Getopt</a>.

     <!-- O_RDONLY -->
     <br><dt><code>int O_RDONLY</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Access-Modes.html#Access-Modes">Access Modes</a>.

     <!-- O_RDWR -->
     <br><dt><code>int O_RDWR</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Access-Modes.html#Access-Modes">Access Modes</a>.

     <!-- O_READ -->
     <br><dt><code>int O_READ</code><dd>
<samp><span class="file">fcntl.h</span></samp> (GNU):  <a href="Access-Modes.html#Access-Modes">Access Modes</a>.

     <!-- O_SHLOCK -->
     <br><dt><code>int O_SHLOCK</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- O_SYNC -->
     <br><dt><code>int O_SYNC</code><dd>
<samp><span class="file">fcntl.h</span></samp> (BSD):  <a href="Operating-Modes.html#Operating-Modes">Operating Modes</a>.

     <!-- O_TRUNC -->
     <br><dt><code>int O_TRUNC</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Open_002dtime-Flags.html#Open_002dtime-Flags">Open-time Flags</a>.

     <!-- O_WRITE -->
     <br><dt><code>int O_WRITE</code><dd>
<samp><span class="file">fcntl.h</span></samp> (GNU):  <a href="Access-Modes.html#Access-Modes">Access Modes</a>.

     <!-- O_WRONLY -->
     <br><dt><code>int O_WRONLY</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="Access-Modes.html#Access-Modes">Access Modes</a>.

     <!-- OXTABS -->
     <br><dt><code>tcflag_t OXTABS</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Output-Modes.html#Output-Modes">Output Modes</a>.

     <!-- PA_CHAR -->
     <br><dt><code>PA_CHAR</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_DOUBLE -->
     <br><dt><code>PA_DOUBLE</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_FLAG_LONG -->
     <br><dt><code>PA_FLAG_LONG</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_FLAG_LONG_DOUBLE -->
     <br><dt><code>PA_FLAG_LONG_DOUBLE</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_FLAG_LONG_LONG -->
     <br><dt><code>PA_FLAG_LONG_LONG</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_FLAG_MASK -->
     <br><dt><code>int PA_FLAG_MASK</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_FLAG_PTR -->
     <br><dt><code>PA_FLAG_PTR</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_FLAG_SHORT -->
     <br><dt><code>PA_FLAG_SHORT</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_FLOAT -->
     <br><dt><code>PA_FLOAT</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_INT -->
     <br><dt><code>PA_INT</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_LAST -->
     <br><dt><code>PA_LAST</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_POINTER -->
     <br><dt><code>PA_POINTER</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PARENB -->
     <br><dt><code>tcflag_t PARENB</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- PARMRK -->
     <br><dt><code>tcflag_t PARMRK</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Input-Modes.html#Input-Modes">Input Modes</a>.

     <!-- PARODD -->
     <br><dt><code>tcflag_t PARODD</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Control-Modes.html#Control-Modes">Control Modes</a>.

     <!-- parse_printf_format -->
     <br><dt><code>size_t parse_printf_format (const char *</code><var>template</var><code>, size_t </code><var>n</var><code>, int *</code><var>argtypes</var><code>)</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- PA_STRING -->
     <br><dt><code>PA_STRING</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Parsing-a-Template-String.html#Parsing-a-Template-String">Parsing a Template String</a>.

     <!-- pathconf -->
     <br><dt><code>long int pathconf (const char *</code><var>filename</var><code>, int </code><var>parameter</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- PATH_MAX -->
     <br><dt><code>int PATH_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- pause -->
     <br><dt><code>int pause ()</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Using-Pause.html#Using-Pause">Using Pause</a>.

     <!-- _PC_ASYNC_IO -->
     <br><dt><code>_PC_ASYNC_IO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_CHOWN_RESTRICTED -->
     <br><dt><code>_PC_CHOWN_RESTRICTED</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_FILESIZEBITS -->
     <br><dt><code>_PC_FILESIZEBITS</code><dd>
<samp><span class="file">unistd.h</span></samp> (LFS):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_LINK_MAX -->
     <br><dt><code>_PC_LINK_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- pclose -->
     <br><dt><code>int pclose (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.2, SVID, BSD):  <a href="Pipe-to-a-Subprocess.html#Pipe-to-a-Subprocess">Pipe to a Subprocess</a>.

     <!-- _PC_MAX_CANON -->
     <br><dt><code>_PC_MAX_CANON</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_MAX_INPUT -->
     <br><dt><code>_PC_MAX_INPUT</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_NAME_MAX -->
     <br><dt><code>_PC_NAME_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_NO_TRUNC -->
     <br><dt><code>_PC_NO_TRUNC</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_PATH_MAX -->
     <br><dt><code>_PC_PATH_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_PIPE_BUF -->
     <br><dt><code>_PC_PIPE_BUF</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_PRIO_IO -->
     <br><dt><code>_PC_PRIO_IO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_REC_INCR_XFER_SIZE -->
     <br><dt><code>_PC_REC_INCR_XFER_SIZE</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_REC_MAX_XFER_SIZE -->
     <br><dt><code>_PC_REC_MAX_XFER_SIZE</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_REC_MIN_XFER_SIZE -->
     <br><dt><code>_PC_REC_MIN_XFER_SIZE</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_REC_XFER_ALIGN -->
     <br><dt><code>_PC_REC_XFER_ALIGN</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_SYNC_IO -->
     <br><dt><code>_PC_SYNC_IO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- _PC_VDISABLE -->
     <br><dt><code>_PC_VDISABLE</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Pathconf.html#Pathconf">Pathconf</a>.

     <!-- PENDIN -->
     <br><dt><code>tcflag_t PENDIN</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- perror -->
     <br><dt><code>void perror (const char *</code><var>message</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- PF_FILE -->
     <br><dt><code>int PF_FILE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (GNU):  <a href="Local-Namespace-Details.html#Local-Namespace-Details">Local Namespace Details</a>.

     <!-- PF_INET -->
     <br><dt><code>int PF_INET</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Internet-Namespace.html#Internet-Namespace">Internet Namespace</a>.

     <!-- PF_INET6 -->
     <br><dt><code>int PF_INET6</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (X/Open):  <a href="Internet-Namespace.html#Internet-Namespace">Internet Namespace</a>.

     <!-- PF_LOCAL -->
     <br><dt><code>int PF_LOCAL</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (POSIX):  <a href="Local-Namespace-Details.html#Local-Namespace-Details">Local Namespace Details</a>.

     <!-- PF_UNIX -->
     <br><dt><code>int PF_UNIX</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Local-Namespace-Details.html#Local-Namespace-Details">Local Namespace Details</a>.

     <!-- pid_t -->
     <br><dt><code>pid_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="Process-Identification.html#Process-Identification">Process Identification</a>.

     <!-- pipe -->
     <br><dt><code>int pipe (int </code><var>filedes</var><tt>[2]</tt><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Creating-a-Pipe.html#Creating-a-Pipe">Creating a Pipe</a>.

     <!-- PIPE_BUF -->
     <br><dt><code>int PIPE_BUF</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Limits-for-Files.html#Limits-for-Files">Limits for Files</a>.

     <!-- popen -->
     <br><dt><code>FILE * popen (const char *</code><var>command</var><code>, const char *</code><var>mode</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX.2, SVID, BSD):  <a href="Pipe-to-a-Subprocess.html#Pipe-to-a-Subprocess">Pipe to a Subprocess</a>.

     <!-- _POSIX2_BC_BASE_MAX -->
     <br><dt><code>_POSIX2_BC_BASE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_BC_DIM_MAX -->
     <br><dt><code>_POSIX2_BC_DIM_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_BC_SCALE_MAX -->
     <br><dt><code>_POSIX2_BC_SCALE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_BC_STRING_MAX -->
     <br><dt><code>_POSIX2_BC_STRING_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_C_DEV -->
     <br><dt><code>int _POSIX2_C_DEV</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="System-Options.html#System-Options">System Options</a>.

     <!-- _POSIX2_COLL_WEIGHTS_MAX -->
     <br><dt><code>_POSIX2_COLL_WEIGHTS_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_C_VERSION -->
     <br><dt><code>long int _POSIX2_C_VERSION</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Version-Supported.html#Version-Supported">Version Supported</a>.

     <!-- _POSIX2_EQUIV_CLASS_MAX -->
     <br><dt><code>_POSIX2_EQUIV_CLASS_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_EXPR_NEST_MAX -->
     <br><dt><code>_POSIX2_EXPR_NEST_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_FORT_DEV -->
     <br><dt><code>int _POSIX2_FORT_DEV</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="System-Options.html#System-Options">System Options</a>.

     <!-- _POSIX2_FORT_RUN -->
     <br><dt><code>int _POSIX2_FORT_RUN</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="System-Options.html#System-Options">System Options</a>.

     <!-- _POSIX2_LINE_MAX -->
     <br><dt><code>_POSIX2_LINE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Utility-Minimums.html#Utility-Minimums">Utility Minimums</a>.

     <!-- _POSIX2_LOCALEDEF -->
     <br><dt><code>int _POSIX2_LOCALEDEF</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="System-Options.html#System-Options">System Options</a>.

     <!-- _POSIX2_RE_DUP_MAX -->
     <br><dt><code>_POSIX2_RE_DUP_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX2_SW_DEV -->
     <br><dt><code>int _POSIX2_SW_DEV</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="System-Options.html#System-Options">System Options</a>.

     <!-- _POSIX_AIO_LISTIO_MAX -->
     <br><dt><code>_POSIX_AIO_LISTIO_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_AIO_MAX -->
     <br><dt><code>_POSIX_AIO_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_ARG_MAX -->
     <br><dt><code>_POSIX_ARG_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_CHILD_MAX -->
     <br><dt><code>_POSIX_CHILD_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_CHOWN_RESTRICTED -->
     <br><dt><code>int _POSIX_CHOWN_RESTRICTED</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Options-for-Files.html#Options-for-Files">Options for Files</a>.

     <!-- _POSIX_C_SOURCE -->
     <br><dt><code>_POSIX_C_SOURCE</code><dd>
(POSIX.2):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- _POSIX_JOB_CONTROL -->
     <br><dt><code>int _POSIX_JOB_CONTROL</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="System-Options.html#System-Options">System Options</a>.

     <!-- _POSIX_LINK_MAX -->
     <br><dt><code>_POSIX_LINK_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- _POSIX_MAX_CANON -->
     <br><dt><code>_POSIX_MAX_CANON</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- _POSIX_MAX_INPUT -->
     <br><dt><code>_POSIX_MAX_INPUT</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- posix_memalign -->
     <br><dt><code>int posix_memalign (void **</code><var>memptr</var><code>, size_t </code><var>alignment</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (POSIX):  <a href="Aligned-Memory-Blocks.html#Aligned-Memory-Blocks">Aligned Memory Blocks</a>.

     <!-- _POSIX_NAME_MAX -->
     <br><dt><code>_POSIX_NAME_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- _POSIX_NGROUPS_MAX -->
     <br><dt><code>_POSIX_NGROUPS_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_NO_TRUNC -->
     <br><dt><code>int _POSIX_NO_TRUNC</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Options-for-Files.html#Options-for-Files">Options for Files</a>.

     <!-- _POSIX_OPEN_MAX -->
     <br><dt><code>_POSIX_OPEN_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_PATH_MAX -->
     <br><dt><code>_POSIX_PATH_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- _POSIX_PIPE_BUF -->
     <br><dt><code>_POSIX_PIPE_BUF</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- POSIX_REC_INCR_XFER_SIZE -->
     <br><dt><code>POSIX_REC_INCR_XFER_SIZE</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- POSIX_REC_MAX_XFER_SIZE -->
     <br><dt><code>POSIX_REC_MAX_XFER_SIZE</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- POSIX_REC_MIN_XFER_SIZE -->
     <br><dt><code>POSIX_REC_MIN_XFER_SIZE</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- POSIX_REC_XFER_ALIGN -->
     <br><dt><code>POSIX_REC_XFER_ALIGN</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- _POSIX_SAVED_IDS -->
     <br><dt><code>int _POSIX_SAVED_IDS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="System-Options.html#System-Options">System Options</a>.

     <!-- _POSIX_SOURCE -->
     <br><dt><code>_POSIX_SOURCE</code><dd>
(POSIX.1):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- _POSIX_SSIZE_MAX -->
     <br><dt><code>_POSIX_SSIZE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_STREAM_MAX -->
     <br><dt><code>_POSIX_STREAM_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_TZNAME_MAX -->
     <br><dt><code>_POSIX_TZNAME_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="Minimums.html#Minimums">Minimums</a>.

     <!-- _POSIX_VDISABLE -->
     <br><dt><code>unsigned char _POSIX_VDISABLE</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Options-for-Files.html#Options-for-Files">Options for Files</a>.

     <!-- _POSIX_VERSION -->
     <br><dt><code>long int _POSIX_VERSION</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Version-Supported.html#Version-Supported">Version Supported</a>.

     <!-- pow -->
     <br><dt><code>double pow (double </code><var>base</var><code>, double </code><var>power</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- pow10 -->
     <br><dt><code>double pow10 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- pow10f -->
     <br><dt><code>float pow10f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- pow10l -->
     <br><dt><code>long double pow10l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- powf -->
     <br><dt><code>float powf (float </code><var>base</var><code>, float </code><var>power</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- powl -->
     <br><dt><code>long double powl (long double </code><var>base</var><code>, long double </code><var>power</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- pread -->
     <br><dt><code>ssize_t pread (int </code><var>filedes</var><code>, void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>, off_t </code><var>offset</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="I_002fO-Primitives.html#I_002fO-Primitives">I/O Primitives</a>.

     <!-- pread64 -->
     <br><dt><code>ssize_t pread64 (int </code><var>filedes</var><code>, void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>, off64_t </code><var>offset</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="I_002fO-Primitives.html#I_002fO-Primitives">I/O Primitives</a>.

     <!-- printf -->
     <br><dt><code>int printf (const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Formatted-Output-Functions.html#Formatted-Output-Functions">Formatted Output Functions</a>.

     <!-- printf_arginfo_function -->
     <br><dt><code>printf_arginfo_function</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Defining-the-Output-Handler.html#Defining-the-Output-Handler">Defining the Output Handler</a>.

     <!-- printf_function -->
     <br><dt><code>printf_function</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Defining-the-Output-Handler.html#Defining-the-Output-Handler">Defining the Output Handler</a>.

     <!-- printf_size -->
     <br><dt><code>int printf_size (FILE *</code><var>fp</var><code>, const struct printf_info *</code><var>info</var><code>, const void *const *</code><var>args</var><code>)</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Predefined-Printf-Handlers.html#Predefined-Printf-Handlers">Predefined Printf Handlers</a>.

     <!-- printf_size_info -->
     <br><dt><code>int printf_size_info (const struct printf_info *</code><var>info</var><code>, size_t </code><var>n</var><code>, int *</code><var>argtypes</var><code>)</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Predefined-Printf-Handlers.html#Predefined-Printf-Handlers">Predefined Printf Handlers</a>.

     <!-- PRIO_MAX -->
     <br><dt><code>PRIO_MAX</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- PRIO_MIN -->
     <br><dt><code>PRIO_MIN</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- PRIO_PGRP -->
     <br><dt><code>PRIO_PGRP</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- PRIO_PROCESS -->
     <br><dt><code>PRIO_PROCESS</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- PRIO_USER -->
     <br><dt><code>PRIO_USER</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- program_invocation_name -->
     <br><dt><code>char * program_invocation_name</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- program_invocation_short_name -->
     <br><dt><code>char * program_invocation_short_name</code><dd>
<samp><span class="file">errno.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- psignal -->
     <br><dt><code>void psignal (int </code><var>signum</var><code>, const char *</code><var>message</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Signal-Messages.html#Signal-Messages">Signal Messages</a>.

     <!-- P_tmpdir -->
     <br><dt><code>char * P_tmpdir</code><dd>
<samp><span class="file">stdio.h</span></samp> (SVID):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- ptrdiff_t -->
     <br><dt><code>ptrdiff_t</code><dd>
<samp><span class="file">stddef.h</span></samp> (ISO):  <a href="Important-Data-Types.html#Important-Data-Types">Important Data Types</a>.

     <!-- ptsname -->
     <br><dt><code>char * ptsname (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID, XPG4.2):  <a href="Allocation.html#Allocation">Allocation</a>.

     <!-- ptsname_r -->
     <br><dt><code>int ptsname_r (int </code><var>filedes</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="Allocation.html#Allocation">Allocation</a>.

     <!-- putc -->
     <br><dt><code>int putc (int </code><var>c</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putchar -->
     <br><dt><code>int putchar (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putchar_unlocked -->
     <br><dt><code>int putchar_unlocked (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putc_unlocked -->
     <br><dt><code>int putc_unlocked (int </code><var>c</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (POSIX):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putenv -->
     <br><dt><code>int putenv (char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="Environment-Access.html#Environment-Access">Environment Access</a>.

     <!-- putpwent -->
     <br><dt><code>int putpwent (const struct passwd *</code><var>p</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">pwd.h</span></samp> (SVID):  <a href="Writing-a-User-Entry.html#Writing-a-User-Entry">Writing a User Entry</a>.

     <!-- puts -->
     <br><dt><code>int puts (const char *</code><var>s</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- pututline -->
     <br><dt><code>struct utmp * pututline (const struct utmp *</code><var>utmp</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- pututxline -->
     <br><dt><code>struct utmpx * pututxline (const struct utmpx *</code><var>utmp</var><code>)</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- putw -->
     <br><dt><code>int putw (int </code><var>w</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (SVID):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putwc -->
     <br><dt><code>wint_t putwc (wchar_t </code><var>wc</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putwchar -->
     <br><dt><code>wint_t putwchar (wchar_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putwchar_unlocked -->
     <br><dt><code>wint_t putwchar_unlocked (wchar_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- putwc_unlocked -->
     <br><dt><code>wint_t putwc_unlocked (wchar_t </code><var>wc</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Simple-Output.html#Simple-Output">Simple Output</a>.

     <!-- pwrite -->
     <br><dt><code>ssize_t pwrite (int </code><var>filedes</var><code>, const void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>, off_t </code><var>offset</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="I_002fO-Primitives.html#I_002fO-Primitives">I/O Primitives</a>.

     <!-- pwrite64 -->
     <br><dt><code>ssize_t pwrite64 (int </code><var>filedes</var><code>, const void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>, off64_t </code><var>offset</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="I_002fO-Primitives.html#I_002fO-Primitives">I/O Primitives</a>.

     <!-- qecvt -->
     <br><dt><code>char * qecvt (long double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- qecvt_r -->
     <br><dt><code>int qecvt_r (long double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- qfcvt -->
     <br><dt><code>char * qfcvt (long double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- qfcvt_r -->
     <br><dt><code>int qfcvt_r (long double </code><var>value</var><code>, int </code><var>ndigit</var><code>, int *</code><var>decpt</var><code>, int *</code><var>neg</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- qgcvt -->
     <br><dt><code>char * qgcvt (long double </code><var>value</var><code>, int </code><var>ndigit</var><code>, char *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="System-V-Number-Conversion.html#System-V-Number-Conversion">System V Number Conversion</a>.

     <!-- qsort -->
     <br><dt><code>void qsort (void *</code><var>array</var><code>, size_t </code><var>count</var><code>, size_t </code><var>size</var><code>, comparison_fn_t </code><var>compare</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Array-Sort-Function.html#Array-Sort-Function">Array Sort Function</a>.

     <!-- raise -->
     <br><dt><code>int raise (int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Signaling-Yourself.html#Signaling-Yourself">Signaling Yourself</a>.

     <!-- rand -->
     <br><dt><code>int rand (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="ISO-Random.html#ISO-Random">ISO Random</a>.

     <!-- RAND_MAX -->
     <br><dt><code>int RAND_MAX</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="ISO-Random.html#ISO-Random">ISO Random</a>.

     <!-- random -->
     <br><dt><code>long int random (void)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- random_r -->
     <br><dt><code>int random_r (struct random_data *restrict </code><var>buf</var><code>, int32_t *restrict </code><var>result</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- rand_r -->
     <br><dt><code>int rand_r (unsigned int *</code><var>seed</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (POSIX.1):  <a href="ISO-Random.html#ISO-Random">ISO Random</a>.

     <!-- rawmemchr -->
     <br><dt><code>void * rawmemchr (const void *</code><var>block</var><code>, int </code><var>c</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- read -->
     <br><dt><code>ssize_t read (int </code><var>filedes</var><code>, void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="I_002fO-Primitives.html#I_002fO-Primitives">I/O Primitives</a>.

     <!-- readdir -->
     <br><dt><code>struct dirent * readdir (DIR *</code><var>dirstream</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (POSIX.1):  <a href="Reading_002fClosing-Directory.html#Reading_002fClosing-Directory">Reading/Closing Directory</a>.

     <!-- readdir64 -->
     <br><dt><code>struct dirent64 * readdir64 (DIR *</code><var>dirstream</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (LFS):  <a href="Reading_002fClosing-Directory.html#Reading_002fClosing-Directory">Reading/Closing Directory</a>.

     <!-- readdir64_r -->
     <br><dt><code>int readdir64_r (DIR *</code><var>dirstream</var><code>, struct dirent64 *</code><var>entry</var><code>, struct dirent64 **</code><var>result</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (LFS):  <a href="Reading_002fClosing-Directory.html#Reading_002fClosing-Directory">Reading/Closing Directory</a>.

     <!-- readdir_r -->
     <br><dt><code>int readdir_r (DIR *</code><var>dirstream</var><code>, struct dirent *</code><var>entry</var><code>, struct dirent **</code><var>result</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (GNU):  <a href="Reading_002fClosing-Directory.html#Reading_002fClosing-Directory">Reading/Closing Directory</a>.

     <!-- readlink -->
     <br><dt><code>int readlink (const char *</code><var>filename</var><code>, char *</code><var>buffer</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Symbolic-Links.html#Symbolic-Links">Symbolic Links</a>.

     <!-- readv -->
     <br><dt><code>ssize_t readv (int </code><var>filedes</var><code>, const struct iovec *</code><var>vector</var><code>, int </code><var>count</var><code>)</code><dd>
<samp><span class="file">sys/uio.h</span></samp> (BSD):  <a href="Scatter_002dGather.html#Scatter_002dGather">Scatter-Gather</a>.

     <!-- realloc -->
     <br><dt><code>void * realloc (void *</code><var>ptr</var><code>, size_t </code><var>newsize</var><code>)</code><dd>
<samp><span class="file">malloc.h</span></samp>, <samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Changing-Block-Size.html#Changing-Block-Size">Changing Block Size</a>.

     <!-- __realloc_hook -->
     <br><dt><code>__realloc_hook</code><dd>
<samp><span class="file">malloc.h</span></samp> (GNU):  <a href="Hooks-for-Malloc.html#Hooks-for-Malloc">Hooks for Malloc</a>.

     <!-- realpath -->
     <br><dt><code>char * realpath (const char *restrict </code><var>name</var><code>, char *restrict </code><var>resolved</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (XPG):  <a href="Symbolic-Links.html#Symbolic-Links">Symbolic Links</a>.

     <!-- recv -->
     <br><dt><code>int recv (int </code><var>socket</var><code>, void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Receiving-Data.html#Receiving-Data">Receiving Data</a>.

     <!-- recvfrom -->
     <br><dt><code>int recvfrom (int </code><var>socket</var><code>, void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>, int </code><var>flags</var><code>, struct sockaddr *</code><var>addr</var><code>, socklen_t *</code><var>length-ptr</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Receiving-Datagrams.html#Receiving-Datagrams">Receiving Datagrams</a>.

     <!-- recvmsg -->
     <br><dt><code>int recvmsg (int </code><var>socket</var><code>, struct msghdr *</code><var>message</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Receiving-Datagrams.html#Receiving-Datagrams">Receiving Datagrams</a>.

     <!-- RE_DUP_MAX -->
     <br><dt><code>int RE_DUP_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.2):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- _REENTRANT -->
     <br><dt><code>_REENTRANT</code><dd>
(GNU):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- REG_BADBR -->
     <br><dt><code>REG_BADBR</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_BADPAT -->
     <br><dt><code>REG_BADPAT</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_BADRPT -->
     <br><dt><code>REG_BADRPT</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- regcomp -->
     <br><dt><code>int regcomp (regex_t *restrict </code><var>compiled</var><code>, const char *restrict </code><var>pattern</var><code>, int </code><var>cflags</var><code>)</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_EBRACE -->
     <br><dt><code>REG_EBRACE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_EBRACK -->
     <br><dt><code>REG_EBRACK</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_ECOLLATE -->
     <br><dt><code>REG_ECOLLATE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_ECTYPE -->
     <br><dt><code>REG_ECTYPE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_EESCAPE -->
     <br><dt><code>REG_EESCAPE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_EPAREN -->
     <br><dt><code>REG_EPAREN</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_ERANGE -->
     <br><dt><code>REG_ERANGE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- regerror -->
     <br><dt><code>size_t regerror (int </code><var>errcode</var><code>, const regex_t *restrict </code><var>compiled</var><code>, char *restrict </code><var>buffer</var><code>, size_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Regexp-Cleanup.html#Regexp-Cleanup">Regexp Cleanup</a>.

     <!-- REG_ESPACE -->
     <br><dt><code>REG_ESPACE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Matching-POSIX-Regexps.html#Matching-POSIX-Regexps">Matching POSIX Regexps</a>.

     <!-- REG_ESPACE -->
     <br><dt><code>REG_ESPACE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_ESUBREG -->
     <br><dt><code>REG_ESUBREG</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- regexec -->
     <br><dt><code>int regexec (const regex_t *restrict </code><var>compiled</var><code>, const char *restrict </code><var>string</var><code>, size_t </code><var>nmatch</var><code>, regmatch_t </code><var>matchptr</var><code>[restrict], int </code><var>eflags</var><code>)</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Matching-POSIX-Regexps.html#Matching-POSIX-Regexps">Matching POSIX Regexps</a>.

     <!-- regex_t -->
     <br><dt><code>regex_t</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="POSIX-Regexp-Compilation.html#POSIX-Regexp-Compilation">POSIX Regexp Compilation</a>.

     <!-- REG_EXTENDED -->
     <br><dt><code>REG_EXTENDED</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Flags-for-POSIX-Regexps.html#Flags-for-POSIX-Regexps">Flags for POSIX Regexps</a>.

     <!-- regfree -->
     <br><dt><code>void regfree (regex_t *</code><var>compiled</var><code>)</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Regexp-Cleanup.html#Regexp-Cleanup">Regexp Cleanup</a>.

     <!-- REG_ICASE -->
     <br><dt><code>REG_ICASE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Flags-for-POSIX-Regexps.html#Flags-for-POSIX-Regexps">Flags for POSIX Regexps</a>.

     <!-- register_printf_function -->
     <br><dt><code>int register_printf_function (int </code><var>spec</var><code>, printf_function </code><var>handler-function</var><code>, printf_arginfo_function </code><var>arginfo-function</var><code>)</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Registering-New-Conversions.html#Registering-New-Conversions">Registering New Conversions</a>.

     <!-- regmatch_t -->
     <br><dt><code>regmatch_t</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Regexp-Subexpressions.html#Regexp-Subexpressions">Regexp Subexpressions</a>.

     <!-- REG_NEWLINE -->
     <br><dt><code>REG_NEWLINE</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Flags-for-POSIX-Regexps.html#Flags-for-POSIX-Regexps">Flags for POSIX Regexps</a>.

     <!-- REG_NOMATCH -->
     <br><dt><code>REG_NOMATCH</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Matching-POSIX-Regexps.html#Matching-POSIX-Regexps">Matching POSIX Regexps</a>.

     <!-- REG_NOSUB -->
     <br><dt><code>REG_NOSUB</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Flags-for-POSIX-Regexps.html#Flags-for-POSIX-Regexps">Flags for POSIX Regexps</a>.

     <!-- REG_NOTBOL -->
     <br><dt><code>REG_NOTBOL</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Matching-POSIX-Regexps.html#Matching-POSIX-Regexps">Matching POSIX Regexps</a>.

     <!-- REG_NOTEOL -->
     <br><dt><code>REG_NOTEOL</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Matching-POSIX-Regexps.html#Matching-POSIX-Regexps">Matching POSIX Regexps</a>.

     <!-- regoff_t -->
     <br><dt><code>regoff_t</code><dd>
<samp><span class="file">regex.h</span></samp> (POSIX.2):  <a href="Regexp-Subexpressions.html#Regexp-Subexpressions">Regexp Subexpressions</a>.

     <!-- remainder -->
     <br><dt><code>double remainder (double </code><var>numerator</var><code>, double </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- remainderf -->
     <br><dt><code>float remainderf (float </code><var>numerator</var><code>, float </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- remainderl -->
     <br><dt><code>long double remainderl (long double </code><var>numerator</var><code>, long double </code><var>denominator</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Remainder-Functions.html#Remainder-Functions">Remainder Functions</a>.

     <!-- remove -->
     <br><dt><code>int remove (const char *</code><var>filename</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Deleting-Files.html#Deleting-Files">Deleting Files</a>.

     <!-- rename -->
     <br><dt><code>int rename (const char *</code><var>oldname</var><code>, const char *</code><var>newname</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Renaming-Files.html#Renaming-Files">Renaming Files</a>.

     <!-- rewind -->
     <br><dt><code>void rewind (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- rewinddir -->
     <br><dt><code>void rewinddir (DIR *</code><var>dirstream</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (POSIX.1):  <a href="Random-Access-Directory.html#Random-Access-Directory">Random Access Directory</a>.

     <!-- rindex -->
     <br><dt><code>char * rindex (const char *</code><var>string</var><code>, int </code><var>c</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- rint -->
     <br><dt><code>double rint (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- rintf -->
     <br><dt><code>float rintf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- rintl -->
     <br><dt><code>long double rintl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- RLIM_INFINITY -->
     <br><dt><code>int RLIM_INFINITY</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_AS -->
     <br><dt><code>RLIMIT_AS</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (Unix98):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_CORE -->
     <br><dt><code>RLIMIT_CORE</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_CPU -->
     <br><dt><code>RLIMIT_CPU</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_DATA -->
     <br><dt><code>RLIMIT_DATA</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_FSIZE -->
     <br><dt><code>RLIMIT_FSIZE</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_MEMLOCK -->
     <br><dt><code>RLIMIT_MEMLOCK</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_NOFILE -->
     <br><dt><code>RLIMIT_NOFILE</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_NPROC -->
     <br><dt><code>RLIMIT_NPROC</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_RSS -->
     <br><dt><code>RLIMIT_RSS</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIMIT_STACK -->
     <br><dt><code>RLIMIT_STACK</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- RLIM_NLIMITS -->
     <br><dt><code>RLIM_NLIMITS</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- rmdir -->
     <br><dt><code>int rmdir (const char *</code><var>filename</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Deleting-Files.html#Deleting-Files">Deleting Files</a>.

     <!-- R_OK -->
     <br><dt><code>int R_OK</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Testing-File-Access.html#Testing-File-Access">Testing File Access</a>.

     <!-- round -->
     <br><dt><code>double round (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- roundf -->
     <br><dt><code>float roundf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- roundl -->
     <br><dt><code>long double roundl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- rpmatch -->
     <br><dt><code>int rpmatch (const char *</code><var>response</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (stdlib.h):  <a href="Yes_002dor_002dNo-Questions.html#Yes_002dor_002dNo-Questions">Yes-or-No Questions</a>.

     <!-- RUN_LVL -->
     <br><dt><code>RUN_LVL</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- RUN_LVL -->
     <br><dt><code>RUN_LVL</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- RUSAGE_CHILDREN -->
     <br><dt><code>RUSAGE_CHILDREN</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Resource-Usage.html#Resource-Usage">Resource Usage</a>.

     <!-- RUSAGE_SELF -->
     <br><dt><code>RUSAGE_SELF</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Resource-Usage.html#Resource-Usage">Resource Usage</a>.

     <!-- SA_NOCLDSTOP -->
     <br><dt><code>int SA_NOCLDSTOP</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Flags-for-Sigaction.html#Flags-for-Sigaction">Flags for Sigaction</a>.

     <!-- SA_ONSTACK -->
     <br><dt><code>int SA_ONSTACK</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Flags-for-Sigaction.html#Flags-for-Sigaction">Flags for Sigaction</a>.

     <!-- SA_RESTART -->
     <br><dt><code>int SA_RESTART</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Flags-for-Sigaction.html#Flags-for-Sigaction">Flags for Sigaction</a>.

     <!-- *sbrk -->
     <br><dt><code>void *sbrk (ptrdiff_t </code><var>delta</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Resizing-the-Data-Segment.html#Resizing-the-Data-Segment">Resizing the Data Segment</a>.

     <!-- _SC_2_C_DEV -->
     <br><dt><code>_SC_2_C_DEV</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_2_FORT_DEV -->
     <br><dt><code>_SC_2_FORT_DEV</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_2_FORT_RUN -->
     <br><dt><code>_SC_2_FORT_RUN</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_2_LOCALEDEF -->
     <br><dt><code>_SC_2_LOCALEDEF</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_2_SW_DEV -->
     <br><dt><code>_SC_2_SW_DEV</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_2_VERSION -->
     <br><dt><code>_SC_2_VERSION</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_AIO_LISTIO_MAX -->
     <br><dt><code>_SC_AIO_LISTIO_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_AIO_MAX -->
     <br><dt><code>_SC_AIO_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_AIO_PRIO_DELTA_MAX -->
     <br><dt><code>_SC_AIO_PRIO_DELTA_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- scalb -->
     <br><dt><code>double scalb (double </code><var>value</var><code>, int </code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalbf -->
     <br><dt><code>float scalbf (float </code><var>value</var><code>, int </code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalbl -->
     <br><dt><code>long double scalbl (long double </code><var>value</var><code>, int </code><var>exponent</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalbln -->
     <br><dt><code>long long int scalbln (double </code><var>x</var><code>, long int n)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalblnf -->
     <br><dt><code>long long int scalblnf (float </code><var>x</var><code>, long int n)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalblnl -->
     <br><dt><code>long long int scalblnl (long double </code><var>x</var><code>, long int n)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalbn -->
     <br><dt><code>long long int scalbn (double </code><var>x</var><code>, int n)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalbnf -->
     <br><dt><code>long long int scalbnf (float </code><var>x</var><code>, int n)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scalbnl -->
     <br><dt><code>long long int scalbnl (long double </code><var>x</var><code>, int n)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- scandir -->
     <br><dt><code>int scandir (const char *</code><var>dir</var><code>, struct dirent ***</code><var>namelist</var><code>, int (*</code><var>selector</var><code>) (const struct dirent *), int (*</code><var>cmp</var><code>) (const void *, const void *))</code><dd>
<samp><span class="file">dirent.h</span></samp> (BSD/SVID):  <a href="Scanning-Directory-Content.html#Scanning-Directory-Content">Scanning Directory Content</a>.

     <!-- scandir64 -->
     <br><dt><code>int scandir64 (const char *</code><var>dir</var><code>, struct dirent64 ***</code><var>namelist</var><code>, int (*</code><var>selector</var><code>) (const struct dirent64 *), int (*</code><var>cmp</var><code>) (const void *, const void *))</code><dd>
<samp><span class="file">dirent.h</span></samp> (GNU):  <a href="Scanning-Directory-Content.html#Scanning-Directory-Content">Scanning Directory Content</a>.

     <!-- scanf -->
     <br><dt><code>int scanf (const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Formatted-Input-Functions.html#Formatted-Input-Functions">Formatted Input Functions</a>.

     <!-- _SC_ARG_MAX -->
     <br><dt><code>_SC_ARG_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_ASYNCHRONOUS_IO -->
     <br><dt><code>_SC_ASYNCHRONOUS_IO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_ATEXIT_MAX -->
     <br><dt><code>_SC_ATEXIT_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_AVPHYS_PAGES -->
     <br><dt><code>_SC_AVPHYS_PAGES</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_BC_BASE_MAX -->
     <br><dt><code>_SC_BC_BASE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_BC_DIM_MAX -->
     <br><dt><code>_SC_BC_DIM_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_BC_SCALE_MAX -->
     <br><dt><code>_SC_BC_SCALE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_BC_STRING_MAX -->
     <br><dt><code>_SC_BC_STRING_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_CHAR_BIT -->
     <br><dt><code>_SC_CHAR_BIT</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_CHARCLASS_NAME_MAX -->
     <br><dt><code>_SC_CHARCLASS_NAME_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_CHAR_MAX -->
     <br><dt><code>_SC_CHAR_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_CHAR_MIN -->
     <br><dt><code>_SC_CHAR_MIN</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_CHILD_MAX -->
     <br><dt><code>_SC_CHILD_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_CLK_TCK -->
     <br><dt><code>_SC_CLK_TCK</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_COLL_WEIGHTS_MAX -->
     <br><dt><code>_SC_COLL_WEIGHTS_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_DELAYTIMER_MAX -->
     <br><dt><code>_SC_DELAYTIMER_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_EQUIV_CLASS_MAX -->
     <br><dt><code>_SC_EQUIV_CLASS_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_EXPR_NEST_MAX -->
     <br><dt><code>_SC_EXPR_NEST_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_FSYNC -->
     <br><dt><code>_SC_FSYNC</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_GETGR_R_SIZE_MAX -->
     <br><dt><code>_SC_GETGR_R_SIZE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_GETPW_R_SIZE_MAX -->
     <br><dt><code>_SC_GETPW_R_SIZE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- SCHAR_MAX -->
     <br><dt><code>SCHAR_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- SCHAR_MIN -->
     <br><dt><code>SCHAR_MIN</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- sched_getaffinity -->
     <br><dt><code>int sched_getaffinity (pid_t </code><var>pid</var><code>, size_t </code><var>cpusetsize</var><code>, cpu_set_t *</code><var>cpuset</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- sched_getparam -->
     <br><dt><code>int sched_getparam (pid_t </code><var>pid</var><code>, const struct sched_param *</code><var>param</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- sched_get_priority_max -->
     <br><dt><code>int sched_get_priority_max (int *</code><var>policy</var><code>);</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- sched_get_priority_min -->
     <br><dt><code>int sched_get_priority_min (int *</code><var>policy</var><code>);</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- sched_getscheduler -->
     <br><dt><code>int sched_getscheduler (pid_t </code><var>pid</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- sched_rr_get_interval -->
     <br><dt><code>int sched_rr_get_interval (pid_t </code><var>pid</var><code>, struct timespec *</code><var>interval</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- sched_setaffinity -->
     <br><dt><code>int sched_setaffinity (pid_t </code><var>pid</var><code>, size_t </code><var>cpusetsize</var><code>, const cpu_set_t *</code><var>cpuset</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (GNU):  <a href="CPU-Affinity.html#CPU-Affinity">CPU Affinity</a>.

     <!-- sched_setparam -->
     <br><dt><code>int sched_setparam (pid_t </code><var>pid</var><code>, const struct sched_param *</code><var>param</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- sched_setscheduler -->
     <br><dt><code>int sched_setscheduler (pid_t </code><var>pid</var><code>, int </code><var>policy</var><code>, const struct sched_param *</code><var>param</var><code>)</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- sched_yield -->
     <br><dt><code>int sched_yield (void)</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- _SC_INT_MAX -->
     <br><dt><code>_SC_INT_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_INT_MIN -->
     <br><dt><code>_SC_INT_MIN</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_JOB_CONTROL -->
     <br><dt><code>_SC_JOB_CONTROL</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_LINE_MAX -->
     <br><dt><code>_SC_LINE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_LOGIN_NAME_MAX -->
     <br><dt><code>_SC_LOGIN_NAME_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_LONG_BIT -->
     <br><dt><code>_SC_LONG_BIT</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MAPPED_FILES -->
     <br><dt><code>_SC_MAPPED_FILES</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MB_LEN_MAX -->
     <br><dt><code>_SC_MB_LEN_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MEMLOCK -->
     <br><dt><code>_SC_MEMLOCK</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MEMLOCK_RANGE -->
     <br><dt><code>_SC_MEMLOCK_RANGE</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MEMORY_PROTECTION -->
     <br><dt><code>_SC_MEMORY_PROTECTION</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MESSAGE_PASSING -->
     <br><dt><code>_SC_MESSAGE_PASSING</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MQ_OPEN_MAX -->
     <br><dt><code>_SC_MQ_OPEN_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_MQ_PRIO_MAX -->
     <br><dt><code>_SC_MQ_PRIO_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NGROUPS_MAX -->
     <br><dt><code>_SC_NGROUPS_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NL_ARGMAX -->
     <br><dt><code>_SC_NL_ARGMAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NL_LANGMAX -->
     <br><dt><code>_SC_NL_LANGMAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NL_MSGMAX -->
     <br><dt><code>_SC_NL_MSGMAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NL_NMAX -->
     <br><dt><code>_SC_NL_NMAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NL_SETMAX -->
     <br><dt><code>_SC_NL_SETMAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NL_TEXTMAX -->
     <br><dt><code>_SC_NL_TEXTMAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NPROCESSORS_CONF -->
     <br><dt><code>_SC_NPROCESSORS_CONF</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NPROCESSORS_ONLN -->
     <br><dt><code>_SC_NPROCESSORS_ONLN</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_NZERO -->
     <br><dt><code>_SC_NZERO</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_OPEN_MAX -->
     <br><dt><code>_SC_OPEN_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PAGESIZE -->
     <br><dt><code>_SC_PAGESIZE</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PHYS_PAGES -->
     <br><dt><code>_SC_PHYS_PAGES</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII -->
     <br><dt><code>_SC_PII</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_INTERNET -->
     <br><dt><code>_SC_PII_INTERNET</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_INTERNET_DGRAM -->
     <br><dt><code>_SC_PII_INTERNET_DGRAM</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_INTERNET_STREAM -->
     <br><dt><code>_SC_PII_INTERNET_STREAM</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_OSI -->
     <br><dt><code>_SC_PII_OSI</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_OSI_CLTS -->
     <br><dt><code>_SC_PII_OSI_CLTS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_OSI_COTS -->
     <br><dt><code>_SC_PII_OSI_COTS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_OSI_M -->
     <br><dt><code>_SC_PII_OSI_M</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_SOCKET -->
     <br><dt><code>_SC_PII_SOCKET</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PII_XTI -->
     <br><dt><code>_SC_PII_XTI</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PRIORITIZED_IO -->
     <br><dt><code>_SC_PRIORITIZED_IO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_PRIORITY_SCHEDULING -->
     <br><dt><code>_SC_PRIORITY_SCHEDULING</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_REALTIME_SIGNALS -->
     <br><dt><code>_SC_REALTIME_SIGNALS</code><dd>
<samp><span class="file">unistdh.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_RTSIG_MAX -->
     <br><dt><code>_SC_RTSIG_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SAVED_IDS -->
     <br><dt><code>_SC_SAVED_IDS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SCHAR_MAX -->
     <br><dt><code>_SC_SCHAR_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SCHAR_MIN -->
     <br><dt><code>_SC_SCHAR_MIN</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SELECT -->
     <br><dt><code>_SC_SELECT</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SEMAPHORES -->
     <br><dt><code>_SC_SEMAPHORES</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SEM_NSEMS_MAX -->
     <br><dt><code>_SC_SEM_NSEMS_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SEM_VALUE_MAX -->
     <br><dt><code>_SC_SEM_VALUE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SHARED_MEMORY_OBJECTS -->
     <br><dt><code>_SC_SHARED_MEMORY_OBJECTS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SHRT_MAX -->
     <br><dt><code>_SC_SHRT_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SHRT_MIN -->
     <br><dt><code>_SC_SHRT_MIN</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SIGQUEUE_MAX -->
     <br><dt><code>_SC_SIGQUEUE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- SC_SSIZE_MAX -->
     <br><dt><code>SC_SSIZE_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_STREAM_MAX -->
     <br><dt><code>_SC_STREAM_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_SYNCHRONIZED_IO -->
     <br><dt><code>_SC_SYNCHRONIZED_IO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_ATTR_STACKADDR -->
     <br><dt><code>_SC_THREAD_ATTR_STACKADDR</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_ATTR_STACKSIZE -->
     <br><dt><code>_SC_THREAD_ATTR_STACKSIZE</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_DESTRUCTOR_ITERATIONS -->
     <br><dt><code>_SC_THREAD_DESTRUCTOR_ITERATIONS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_KEYS_MAX -->
     <br><dt><code>_SC_THREAD_KEYS_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_PRIO_INHERIT -->
     <br><dt><code>_SC_THREAD_PRIO_INHERIT</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_PRIO_PROTECT -->
     <br><dt><code>_SC_THREAD_PRIO_PROTECT</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_PRIORITY_SCHEDULING -->
     <br><dt><code>_SC_THREAD_PRIORITY_SCHEDULING</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_PROCESS_SHARED -->
     <br><dt><code>_SC_THREAD_PROCESS_SHARED</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREADS -->
     <br><dt><code>_SC_THREADS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_SAFE_FUNCTIONS -->
     <br><dt><code>_SC_THREAD_SAFE_FUNCTIONS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_STACK_MIN -->
     <br><dt><code>_SC_THREAD_STACK_MIN</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_THREAD_THREADS_MAX -->
     <br><dt><code>_SC_THREAD_THREADS_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_TIMER_MAX -->
     <br><dt><code>_SC_TIMER_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_TIMERS -->
     <br><dt><code>_SC_TIMERS</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_T_IOV_MAX -->
     <br><dt><code>_SC_T_IOV_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_TTY_NAME_MAX -->
     <br><dt><code>_SC_TTY_NAME_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_TZNAME_MAX -->
     <br><dt><code>_SC_TZNAME_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_UCHAR_MAX -->
     <br><dt><code>_SC_UCHAR_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_UINT_MAX -->
     <br><dt><code>_SC_UINT_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_UIO_MAXIOV -->
     <br><dt><code>_SC_UIO_MAXIOV</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1g):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_ULONG_MAX -->
     <br><dt><code>_SC_ULONG_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_USHRT_MAX -->
     <br><dt><code>_SC_USHRT_MAX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_VERSION -->
     <br><dt><code>_SC_VERSION</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_VERSION -->
     <br><dt><code>_SC_VERSION</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.2):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_WORD_BIT -->
     <br><dt><code>_SC_WORD_BIT</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_CRYPT -->
     <br><dt><code>_SC_XOPEN_CRYPT</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_ENH_I18N -->
     <br><dt><code>_SC_XOPEN_ENH_I18N</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_LEGACY -->
     <br><dt><code>_SC_XOPEN_LEGACY</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_REALTIME -->
     <br><dt><code>_SC_XOPEN_REALTIME</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_REALTIME_THREADS -->
     <br><dt><code>_SC_XOPEN_REALTIME_THREADS</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_SHM -->
     <br><dt><code>_SC_XOPEN_SHM</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_UNIX -->
     <br><dt><code>_SC_XOPEN_UNIX</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_VERSION -->
     <br><dt><code>_SC_XOPEN_VERSION</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_XCU_VERSION -->
     <br><dt><code>_SC_XOPEN_XCU_VERSION</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_XPG2 -->
     <br><dt><code>_SC_XOPEN_XPG2</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_XPG3 -->
     <br><dt><code>_SC_XOPEN_XPG3</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- _SC_XOPEN_XPG4 -->
     <br><dt><code>_SC_XOPEN_XPG4</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Constants-for-Sysconf.html#Constants-for-Sysconf">Constants for Sysconf</a>.

     <!-- seed48 -->
     <br><dt><code>unsigned short int * seed48 (unsigned short int </code><var>seed16v</var><code>[3])</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- seed48_r -->
     <br><dt><code>int seed48_r (unsigned short int </code><var>seed16v</var><code>[3], struct drand48_data *</code><var>buffer</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- SEEK_CUR -->
     <br><dt><code>int SEEK_CUR</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- seekdir -->
     <br><dt><code>void seekdir (DIR *</code><var>dirstream</var><code>, long int </code><var>pos</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (BSD):  <a href="Random-Access-Directory.html#Random-Access-Directory">Random Access Directory</a>.

     <!-- SEEK_END -->
     <br><dt><code>int SEEK_END</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- SEEK_SET -->
     <br><dt><code>int SEEK_SET</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="File-Positioning.html#File-Positioning">File Positioning</a>.

     <!-- select -->
     <br><dt><code>int select (int </code><var>nfds</var><code>, fd_set *</code><var>read-fds</var><code>, fd_set *</code><var>write-fds</var><code>, fd_set *</code><var>except-fds</var><code>, struct timeval *</code><var>timeout</var><code>)</code><dd>
<samp><span class="file">sys/types.h</span></samp> (BSD):  <a href="Waiting-for-I_002fO.html#Waiting-for-I_002fO">Waiting for I/O</a>.

     <!-- send -->
     <br><dt><code>int send (int </code><var>socket</var><code>, void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Sending-Data.html#Sending-Data">Sending Data</a>.

     <!-- sendmsg -->
     <br><dt><code>int sendmsg (int </code><var>socket</var><code>, const struct msghdr *</code><var>message</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Receiving-Datagrams.html#Receiving-Datagrams">Receiving Datagrams</a>.

     <!-- sendto -->
     <br><dt><code>int sendto (int </code><var>socket</var><code>, void *</code><var>buffer</var><code>. size_t </code><var>size</var><code>, int </code><var>flags</var><code>, struct sockaddr *</code><var>addr</var><code>, socklen_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Sending-Datagrams.html#Sending-Datagrams">Sending Datagrams</a>.

     <!-- setbuf -->
     <br><dt><code>void setbuf (FILE *</code><var>stream</var><code>, char *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- setbuffer -->
     <br><dt><code>void setbuffer (FILE *</code><var>stream</var><code>, char *</code><var>buf</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (BSD):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- setcontext -->
     <br><dt><code>int setcontext (const ucontext_t *</code><var>ucp</var><code>)</code><dd>
<samp><span class="file">ucontext.h</span></samp> (SVID):  <a href="System-V-contexts.html#System-V-contexts">System V contexts</a>.

     <!-- setdomainname -->
     <br><dt><code>int setdomainname (const char *</code><var>name</var><code>, size_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (???):  <a href="Host-Identification.html#Host-Identification">Host Identification</a>.

     <!-- setegid -->
     <br><dt><code>int setegid (gid_t </code><var>newgid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Setting-Groups.html#Setting-Groups">Setting Groups</a>.

     <!-- setenv -->
     <br><dt><code>int setenv (const char *</code><var>name</var><code>, const char *</code><var>value</var><code>, int </code><var>replace</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Environment-Access.html#Environment-Access">Environment Access</a>.

     <!-- seteuid -->
     <br><dt><code>int seteuid (uid_t </code><var>neweuid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Setting-User-ID.html#Setting-User-ID">Setting User ID</a>.

     <!-- setfsent -->
     <br><dt><code>int setfsent (void)</code><dd>
<samp><span class="file">fstab.h</span></samp> (BSD):  <a href="fstab.html#fstab">fstab</a>.

     <!-- setgid -->
     <br><dt><code>int setgid (gid_t </code><var>newgid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Setting-Groups.html#Setting-Groups">Setting Groups</a>.

     <!-- setgrent -->
     <br><dt><code>void setgrent (void)</code><dd>
<samp><span class="file">grp.h</span></samp> (SVID, BSD):  <a href="Scanning-All-Groups.html#Scanning-All-Groups">Scanning All Groups</a>.

     <!-- setgroups -->
     <br><dt><code>int setgroups (size_t </code><var>count</var><code>, gid_t *</code><var>groups</var><code>)</code><dd>
<samp><span class="file">grp.h</span></samp> (BSD):  <a href="Setting-Groups.html#Setting-Groups">Setting Groups</a>.

     <!-- sethostent -->
     <br><dt><code>void sethostent (int </code><var>stayopen</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- sethostid -->
     <br><dt><code>int sethostid (long int </code><var>id</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Host-Identification.html#Host-Identification">Host Identification</a>.

     <!-- sethostname -->
     <br><dt><code>int sethostname (const char *</code><var>name</var><code>, size_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Host-Identification.html#Host-Identification">Host Identification</a>.

     <!-- setitimer -->
     <br><dt><code>int setitimer (int </code><var>which</var><code>, struct itimerval *</code><var>new</var><code>, struct itimerval *</code><var>old</var><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="Setting-an-Alarm.html#Setting-an-Alarm">Setting an Alarm</a>.

     <!-- setjmp -->
     <br><dt><code>int setjmp (jmp_buf </code><var>state</var><code>)</code><dd>
<samp><span class="file">setjmp.h</span></samp> (ISO):  <a href="Non_002dLocal-Details.html#Non_002dLocal-Details">Non-Local Details</a>.

     <!-- setkey -->
     <br><dt><code>void setkey (const char *</code><var>key</var><code>)</code><dd>
<samp><span class="file">crypt.h</span></samp> (BSD, SVID):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- setkey_r -->
     <br><dt><code>void setkey_r (const char *</code><var>key</var><code>, struct crypt_data * </code><var>data</var><code>)</code><dd>
<samp><span class="file">crypt.h</span></samp> (GNU):  <a href="DES-Encryption.html#DES-Encryption">DES Encryption</a>.

     <!-- setlinebuf -->
     <br><dt><code>void setlinebuf (FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (BSD):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- setlocale -->
     <br><dt><code>char * setlocale (int </code><var>category</var><code>, const char *</code><var>locale</var><code>)</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="Setting-the-Locale.html#Setting-the-Locale">Setting the Locale</a>.

     <!-- setlogmask -->
     <br><dt><code>int setlogmask (int </code><var>mask</var><code>)</code><dd>
<samp><span class="file">syslog.h</span></samp> (BSD):  <a href="setlogmask.html#setlogmask">setlogmask</a>.

     <!-- setmntent -->
     <br><dt><code>FILE * setmntent (const char *</code><var>file</var><code>, const char *</code><var>mode</var><code>)</code><dd>
<samp><span class="file">mntent.h</span></samp> (BSD):  <a href="mtab.html#mtab">mtab</a>.

     <!-- setnetent -->
     <br><dt><code>void setnetent (int </code><var>stayopen</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Networks-Database.html#Networks-Database">Networks Database</a>.

     <!-- setnetgrent -->
     <br><dt><code>int setnetgrent (const char *</code><var>netgroup</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Lookup-Netgroup.html#Lookup-Netgroup">Lookup Netgroup</a>.

     <!-- setpgid -->
     <br><dt><code>int setpgid (pid_t </code><var>pid</var><code>, pid_t </code><var>pgid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Process-Group-Functions.html#Process-Group-Functions">Process Group Functions</a>.

     <!-- setpgrp -->
     <br><dt><code>int setpgrp (pid_t </code><var>pid</var><code>, pid_t </code><var>pgid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Process-Group-Functions.html#Process-Group-Functions">Process Group Functions</a>.

     <!-- setpriority -->
     <br><dt><code>int setpriority (int </code><var>class</var><code>, int </code><var>id</var><code>, int </code><var>niceval</var><code>)</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD,POSIX):  <a href="Traditional-Scheduling-Functions.html#Traditional-Scheduling-Functions">Traditional Scheduling Functions</a>.

     <!-- setprotoent -->
     <br><dt><code>void setprotoent (int </code><var>stayopen</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Protocols-Database.html#Protocols-Database">Protocols Database</a>.

     <!-- setpwent -->
     <br><dt><code>void setpwent (void)</code><dd>
<samp><span class="file">pwd.h</span></samp> (SVID, BSD):  <a href="Scanning-All-Users.html#Scanning-All-Users">Scanning All Users</a>.

     <!-- setregid -->
     <br><dt><code>int setregid (gid_t </code><var>rgid</var><code>, gid_t </code><var>egid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Setting-Groups.html#Setting-Groups">Setting Groups</a>.

     <!-- setreuid -->
     <br><dt><code>int setreuid (uid_t </code><var>ruid</var><code>, uid_t </code><var>euid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Setting-User-ID.html#Setting-User-ID">Setting User ID</a>.

     <!-- setrlimit -->
     <br><dt><code>int setrlimit (int </code><var>resource</var><code>, const struct rlimit *</code><var>rlp</var><code>)</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- setrlimit64 -->
     <br><dt><code>int setrlimit64 (int </code><var>resource</var><code>, const struct rlimit64 *</code><var>rlp</var><code>)</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (Unix98):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- setservent -->
     <br><dt><code>void setservent (int </code><var>stayopen</var><code>)</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Services-Database.html#Services-Database">Services Database</a>.

     <!-- setsid -->
     <br><dt><code>pid_t setsid (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Process-Group-Functions.html#Process-Group-Functions">Process Group Functions</a>.

     <!-- setsockopt -->
     <br><dt><code>int setsockopt (int </code><var>socket</var><code>, int </code><var>level</var><code>, int </code><var>optname</var><code>, void *</code><var>optval</var><code>, socklen_t </code><var>optlen</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket-Option-Functions.html#Socket-Option-Functions">Socket Option Functions</a>.

     <!-- setstate -->
     <br><dt><code>void * setstate (void *</code><var>state</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- setstate_r -->
     <br><dt><code>int setstate_r (char *restrict </code><var>statebuf</var><code>, struct random_data *restrict </code><var>buf</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- settimeofday -->
     <br><dt><code>int settimeofday (const struct timeval *</code><var>tp</var><code>, const struct timezone *</code><var>tzp</var><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="High_002dResolution-Calendar.html#High_002dResolution-Calendar">High-Resolution Calendar</a>.

     <!-- setuid -->
     <br><dt><code>int setuid (uid_t </code><var>newuid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Setting-User-ID.html#Setting-User-ID">Setting User ID</a>.

     <!-- setutent -->
     <br><dt><code>void setutent (void)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- setutxent -->
     <br><dt><code>void setutxent (void)</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- setvbuf -->
     <br><dt><code>int setvbuf (FILE *</code><var>stream</var><code>, char *</code><var>buf</var><code>, int </code><var>mode</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Controlling-Buffering.html#Controlling-Buffering">Controlling Buffering</a>.

     <!-- SHRT_MAX -->
     <br><dt><code>SHRT_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- SHRT_MIN -->
     <br><dt><code>SHRT_MIN</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- shutdown -->
     <br><dt><code>int shutdown (int </code><var>socket</var><code>, int </code><var>how</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Closing-a-Socket.html#Closing-a-Socket">Closing a Socket</a>.

     <!-- S_IEXEC -->
     <br><dt><code>S_IEXEC</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IFBLK -->
     <br><dt><code>S_IFBLK</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_IFCHR -->
     <br><dt><code>S_IFCHR</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_IFDIR -->
     <br><dt><code>S_IFDIR</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_IFIFO -->
     <br><dt><code>S_IFIFO</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_IFLNK -->
     <br><dt><code>S_IFLNK</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_IFMT -->
     <br><dt><code>int S_IFMT</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_IFREG -->
     <br><dt><code>S_IFREG</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_IFSOCK -->
     <br><dt><code>S_IFSOCK</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- SIGABRT -->
     <br><dt><code>int SIGABRT</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- sigaction -->
     <br><dt><code>int sigaction (int </code><var>signum</var><code>, const struct sigaction *restrict </code><var>action</var><code>, struct sigaction *restrict </code><var>old-action</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Advanced-Signal-Handling.html#Advanced-Signal-Handling">Advanced Signal Handling</a>.

     <!-- sigaddset -->
     <br><dt><code>int sigaddset (sigset_t *</code><var>set</var><code>, int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Signal-Sets.html#Signal-Sets">Signal Sets</a>.

     <!-- SIGALRM -->
     <br><dt><code>int SIGALRM</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Alarm-Signals.html#Alarm-Signals">Alarm Signals</a>.

     <!-- sigaltstack -->
     <br><dt><code>int sigaltstack (const stack_t *restrict </code><var>stack</var><code>, stack_t *restrict </code><var>oldstack</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (XPG):  <a href="Signal-Stack.html#Signal-Stack">Signal Stack</a>.

     <!-- sig_atomic_t -->
     <br><dt><code>sig_atomic_t</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Atomic-Types.html#Atomic-Types">Atomic Types</a>.

     <!-- SIG_BLOCK -->
     <br><dt><code>SIG_BLOCK</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Process-Signal-Mask.html#Process-Signal-Mask">Process Signal Mask</a>.

     <!-- sigblock -->
     <br><dt><code>int sigblock (int </code><var>mask</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Blocking-in-BSD.html#Blocking-in-BSD">Blocking in BSD</a>.

     <!-- SIGBUS -->
     <br><dt><code>int SIGBUS</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- SIGCHLD -->
     <br><dt><code>int SIGCHLD</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Job-Control-Signals.html#Job-Control-Signals">Job Control Signals</a>.

     <!-- SIGCLD -->
     <br><dt><code>int SIGCLD</code><dd>
<samp><span class="file">signal.h</span></samp> (SVID):  <a href="Job-Control-Signals.html#Job-Control-Signals">Job Control Signals</a>.

     <!-- SIGCONT -->
     <br><dt><code>int SIGCONT</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Job-Control-Signals.html#Job-Control-Signals">Job Control Signals</a>.

     <!-- sigdelset -->
     <br><dt><code>int sigdelset (sigset_t *</code><var>set</var><code>, int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Signal-Sets.html#Signal-Sets">Signal Sets</a>.

     <!-- sigemptyset -->
     <br><dt><code>int sigemptyset (sigset_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Signal-Sets.html#Signal-Sets">Signal Sets</a>.

     <!-- SIGEMT -->
     <br><dt><code>int SIGEMT</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- SIG_ERR -->
     <br><dt><code>sighandler_t SIG_ERR</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Basic-Signal-Handling.html#Basic-Signal-Handling">Basic Signal Handling</a>.

     <!-- sigfillset -->
     <br><dt><code>int sigfillset (sigset_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Signal-Sets.html#Signal-Sets">Signal Sets</a>.

     <!-- SIGFPE -->
     <br><dt><code>int SIGFPE</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- sighandler_t -->
     <br><dt><code>sighandler_t</code><dd>
<samp><span class="file">signal.h</span></samp> (GNU):  <a href="Basic-Signal-Handling.html#Basic-Signal-Handling">Basic Signal Handling</a>.

     <!-- SIGHUP -->
     <br><dt><code>int SIGHUP</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Termination-Signals.html#Termination-Signals">Termination Signals</a>.

     <!-- SIGILL -->
     <br><dt><code>int SIGILL</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- SIGINFO -->
     <br><dt><code>int SIGINFO</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Miscellaneous-Signals.html#Miscellaneous-Signals">Miscellaneous Signals</a>.

     <!-- SIGINT -->
     <br><dt><code>int SIGINT</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Termination-Signals.html#Termination-Signals">Termination Signals</a>.

     <!-- siginterrupt -->
     <br><dt><code>int siginterrupt (int </code><var>signum</var><code>, int </code><var>failflag</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="BSD-Handler.html#BSD-Handler">BSD Handler</a>.

     <!-- SIGIO -->
     <br><dt><code>int SIGIO</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Asynchronous-I_002fO-Signals.html#Asynchronous-I_002fO-Signals">Asynchronous I/O Signals</a>.

     <!-- SIGIOT -->
     <br><dt><code>int SIGIOT</code><dd>
<samp><span class="file">signal.h</span></samp> (Unix):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- sigismember -->
     <br><dt><code>int sigismember (const sigset_t *</code><var>set</var><code>, int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Signal-Sets.html#Signal-Sets">Signal Sets</a>.

     <!-- sigjmp_buf -->
     <br><dt><code>sigjmp_buf</code><dd>
<samp><span class="file">setjmp.h</span></samp> (POSIX.1):  <a href="Non_002dLocal-Exits-and-Signals.html#Non_002dLocal-Exits-and-Signals">Non-Local Exits and Signals</a>.

     <!-- SIGKILL -->
     <br><dt><code>int SIGKILL</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Termination-Signals.html#Termination-Signals">Termination Signals</a>.

     <!-- siglongjmp -->
     <br><dt><code>void siglongjmp (sigjmp_buf </code><var>state</var><code>, int </code><var>value</var><code>)</code><dd>
<samp><span class="file">setjmp.h</span></samp> (POSIX.1):  <a href="Non_002dLocal-Exits-and-Signals.html#Non_002dLocal-Exits-and-Signals">Non-Local Exits and Signals</a>.

     <!-- SIGLOST -->
     <br><dt><code>int SIGLOST</code><dd>
<samp><span class="file">signal.h</span></samp> (GNU):  <a href="Operation-Error-Signals.html#Operation-Error-Signals">Operation Error Signals</a>.

     <!-- sigmask -->
     <br><dt><code>int sigmask (int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Blocking-in-BSD.html#Blocking-in-BSD">Blocking in BSD</a>.

     <!-- signal -->
     <br><dt><code>sighandler_t signal (int </code><var>signum</var><code>, sighandler_t </code><var>action</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Basic-Signal-Handling.html#Basic-Signal-Handling">Basic Signal Handling</a>.

     <!-- signbit -->
     <br><dt><code>int signbit (</code><em>float-type</em> <var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="FP-Bit-Twiddling.html#FP-Bit-Twiddling">FP Bit Twiddling</a>.

     <!-- significand -->
     <br><dt><code>long long int significand (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- significandf -->
     <br><dt><code>long long int significandf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- significandl -->
     <br><dt><code>long long int significandl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (BSD):  <a href="Normalization-Functions.html#Normalization-Functions">Normalization Functions</a>.

     <!-- sigpause -->
     <br><dt><code>int sigpause (int </code><var>mask</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Blocking-in-BSD.html#Blocking-in-BSD">Blocking in BSD</a>.

     <!-- sigpending -->
     <br><dt><code>int sigpending (sigset_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Checking-for-Pending-Signals.html#Checking-for-Pending-Signals">Checking for Pending Signals</a>.

     <!-- SIGPIPE -->
     <br><dt><code>int SIGPIPE</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Operation-Error-Signals.html#Operation-Error-Signals">Operation Error Signals</a>.

     <!-- SIGPOLL -->
     <br><dt><code>int SIGPOLL</code><dd>
<samp><span class="file">signal.h</span></samp> (SVID):  <a href="Asynchronous-I_002fO-Signals.html#Asynchronous-I_002fO-Signals">Asynchronous I/O Signals</a>.

     <!-- sigprocmask -->
     <br><dt><code>int sigprocmask (int </code><var>how</var><code>, const sigset_t *restrict </code><var>set</var><code>, sigset_t *restrict </code><var>oldset</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Process-Signal-Mask.html#Process-Signal-Mask">Process Signal Mask</a>.

     <!-- SIGPROF -->
     <br><dt><code>int SIGPROF</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Alarm-Signals.html#Alarm-Signals">Alarm Signals</a>.

     <!-- SIGQUIT -->
     <br><dt><code>int SIGQUIT</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Termination-Signals.html#Termination-Signals">Termination Signals</a>.

     <!-- SIGSEGV -->
     <br><dt><code>int SIGSEGV</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- sigsetjmp -->
     <br><dt><code>int sigsetjmp (sigjmp_buf </code><var>state</var><code>, int </code><var>savesigs</var><code>)</code><dd>
<samp><span class="file">setjmp.h</span></samp> (POSIX.1):  <a href="Non_002dLocal-Exits-and-Signals.html#Non_002dLocal-Exits-and-Signals">Non-Local Exits and Signals</a>.

     <!-- SIG_SETMASK -->
     <br><dt><code>SIG_SETMASK</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Process-Signal-Mask.html#Process-Signal-Mask">Process Signal Mask</a>.

     <!-- sigsetmask -->
     <br><dt><code>int sigsetmask (int </code><var>mask</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Blocking-in-BSD.html#Blocking-in-BSD">Blocking in BSD</a>.

     <!-- sigset_t -->
     <br><dt><code>sigset_t</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Signal-Sets.html#Signal-Sets">Signal Sets</a>.

     <!-- sigstack -->
     <br><dt><code>int sigstack (const struct sigstack *</code><var>stack</var><code>, struct sigstack *</code><var>oldstack</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Signal-Stack.html#Signal-Stack">Signal Stack</a>.

     <!-- SIGSTOP -->
     <br><dt><code>int SIGSTOP</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Job-Control-Signals.html#Job-Control-Signals">Job Control Signals</a>.

     <!-- sigsuspend -->
     <br><dt><code>int sigsuspend (const sigset_t *</code><var>set</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Sigsuspend.html#Sigsuspend">Sigsuspend</a>.

     <!-- SIGSYS -->
     <br><dt><code>int SIGSYS</code><dd>
<samp><span class="file">signal.h</span></samp> (Unix):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- SIGTERM -->
     <br><dt><code>int SIGTERM</code><dd>
<samp><span class="file">signal.h</span></samp> (ISO):  <a href="Termination-Signals.html#Termination-Signals">Termination Signals</a>.

     <!-- SIGTRAP -->
     <br><dt><code>int SIGTRAP</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Program-Error-Signals.html#Program-Error-Signals">Program Error Signals</a>.

     <!-- SIGTSTP -->
     <br><dt><code>int SIGTSTP</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Job-Control-Signals.html#Job-Control-Signals">Job Control Signals</a>.

     <!-- SIGTTIN -->
     <br><dt><code>int SIGTTIN</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Job-Control-Signals.html#Job-Control-Signals">Job Control Signals</a>.

     <!-- SIGTTOU -->
     <br><dt><code>int SIGTTOU</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Job-Control-Signals.html#Job-Control-Signals">Job Control Signals</a>.

     <!-- SIG_UNBLOCK -->
     <br><dt><code>SIG_UNBLOCK</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Process-Signal-Mask.html#Process-Signal-Mask">Process Signal Mask</a>.

     <!-- SIGURG -->
     <br><dt><code>int SIGURG</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Asynchronous-I_002fO-Signals.html#Asynchronous-I_002fO-Signals">Asynchronous I/O Signals</a>.

     <!-- SIGUSR1 -->
     <br><dt><code>int SIGUSR1</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Miscellaneous-Signals.html#Miscellaneous-Signals">Miscellaneous Signals</a>.

     <!-- SIGUSR2 -->
     <br><dt><code>int SIGUSR2</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Miscellaneous-Signals.html#Miscellaneous-Signals">Miscellaneous Signals</a>.

     <!-- sigvec -->
     <br><dt><code>int sigvec (int </code><var>signum</var><code>, const struct sigvec *</code><var>action</var><code>,struct sigvec *</code><var>old-action</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="BSD-Handler.html#BSD-Handler">BSD Handler</a>.

     <!-- SIGVTALRM -->
     <br><dt><code>int SIGVTALRM</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Alarm-Signals.html#Alarm-Signals">Alarm Signals</a>.

     <!-- SIGWINCH -->
     <br><dt><code>int SIGWINCH</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Miscellaneous-Signals.html#Miscellaneous-Signals">Miscellaneous Signals</a>.

     <!-- SIGXCPU -->
     <br><dt><code>int SIGXCPU</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Operation-Error-Signals.html#Operation-Error-Signals">Operation Error Signals</a>.

     <!-- SIGXFSZ -->
     <br><dt><code>int SIGXFSZ</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Operation-Error-Signals.html#Operation-Error-Signals">Operation Error Signals</a>.

     <!-- sin -->
     <br><dt><code>double sin (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- sincos -->
     <br><dt><code>void sincos (double </code><var>x</var><code>, double *</code><var>sinx</var><code>, double *</code><var>cosx</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- sincosf -->
     <br><dt><code>void sincosf (float </code><var>x</var><code>, float *</code><var>sinx</var><code>, float *</code><var>cosx</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- sincosl -->
     <br><dt><code>void sincosl (long double </code><var>x</var><code>, long double *</code><var>sinx</var><code>, long double *</code><var>cosx</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (GNU):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- sinf -->
     <br><dt><code>float sinf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- sinh -->
     <br><dt><code>double sinh (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- sinhf -->
     <br><dt><code>float sinhf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- sinhl -->
     <br><dt><code>long double sinhl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- sinl -->
     <br><dt><code>long double sinl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- S_IREAD -->
     <br><dt><code>S_IREAD</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IRGRP -->
     <br><dt><code>S_IRGRP</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IROTH -->
     <br><dt><code>S_IROTH</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IRUSR -->
     <br><dt><code>S_IRUSR</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IRWXG -->
     <br><dt><code>S_IRWXG</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IRWXO -->
     <br><dt><code>S_IRWXO</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IRWXU -->
     <br><dt><code>S_IRWXU</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_ISBLK -->
     <br><dt><code>int S_ISBLK (mode_t </code><var>m</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_ISCHR -->
     <br><dt><code>int S_ISCHR (mode_t </code><var>m</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_ISDIR -->
     <br><dt><code>int S_ISDIR (mode_t </code><var>m</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_ISFIFO -->
     <br><dt><code>int S_ISFIFO (mode_t </code><var>m</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_ISGID -->
     <br><dt><code>S_ISGID</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_ISLNK -->
     <br><dt><code>int S_ISLNK (mode_t </code><var>m</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (GNU):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_ISREG -->
     <br><dt><code>int S_ISREG (mode_t </code><var>m</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_ISSOCK -->
     <br><dt><code>int S_ISSOCK (mode_t </code><var>m</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (GNU):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_ISUID -->
     <br><dt><code>S_ISUID</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_ISVTX -->
     <br><dt><code>S_ISVTX</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IWGRP -->
     <br><dt><code>S_IWGRP</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IWOTH -->
     <br><dt><code>S_IWOTH</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IWRITE -->
     <br><dt><code>S_IWRITE</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (BSD):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IWUSR -->
     <br><dt><code>S_IWUSR</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IXGRP -->
     <br><dt><code>S_IXGRP</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IXOTH -->
     <br><dt><code>S_IXOTH</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- S_IXUSR -->
     <br><dt><code>S_IXUSR</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Permission-Bits.html#Permission-Bits">Permission Bits</a>.

     <!-- size_t -->
     <br><dt><code>size_t</code><dd>
<samp><span class="file">stddef.h</span></samp> (ISO):  <a href="Important-Data-Types.html#Important-Data-Types">Important Data Types</a>.

     <!-- sleep -->
     <br><dt><code>unsigned int sleep (unsigned int </code><var>seconds</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Sleeping.html#Sleeping">Sleeping</a>.

     <!-- snprintf -->
     <br><dt><code>int snprintf (char *</code><var>s</var><code>, size_t </code><var>size</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Formatted-Output-Functions.html#Formatted-Output-Functions">Formatted Output Functions</a>.

     <!-- SO_BROADCAST -->
     <br><dt><code>SO_BROADCAST</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SOCK_DGRAM -->
     <br><dt><code>int SOCK_DGRAM</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Communication-Styles.html#Communication-Styles">Communication Styles</a>.

     <!-- socket -->
     <br><dt><code>int socket (int </code><var>namespace</var><code>, int </code><var>style</var><code>, int </code><var>protocol</var><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Creating-a-Socket.html#Creating-a-Socket">Creating a Socket</a>.

     <!-- socketpair -->
     <br><dt><code>int socketpair (int </code><var>namespace</var><code>, int </code><var>style</var><code>, int </code><var>protocol</var><code>, int </code><var>filedes</var><tt>[2]</tt><code>)</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket-Pairs.html#Socket-Pairs">Socket Pairs</a>.

     <!-- SOCK_RAW -->
     <br><dt><code>int SOCK_RAW</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Communication-Styles.html#Communication-Styles">Communication Styles</a>.

     <!-- SOCK_RDM -->
     <br><dt><code>int SOCK_RDM</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Communication-Styles.html#Communication-Styles">Communication Styles</a>.

     <!-- SOCK_SEQPACKET -->
     <br><dt><code>int SOCK_SEQPACKET</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Communication-Styles.html#Communication-Styles">Communication Styles</a>.

     <!-- SOCK_STREAM -->
     <br><dt><code>int SOCK_STREAM</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Communication-Styles.html#Communication-Styles">Communication Styles</a>.

     <!-- SO_DEBUG -->
     <br><dt><code>SO_DEBUG</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_DONTROUTE -->
     <br><dt><code>SO_DONTROUTE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_ERROR -->
     <br><dt><code>SO_ERROR</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_KEEPALIVE -->
     <br><dt><code>SO_KEEPALIVE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_LINGER -->
     <br><dt><code>SO_LINGER</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SOL_SOCKET -->
     <br><dt><code>int SOL_SOCKET</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_OOBINLINE -->
     <br><dt><code>SO_OOBINLINE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_RCVBUF -->
     <br><dt><code>SO_RCVBUF</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_REUSEADDR -->
     <br><dt><code>SO_REUSEADDR</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_SNDBUF -->
     <br><dt><code>SO_SNDBUF</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_STYLE -->
     <br><dt><code>SO_STYLE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (GNU):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- SO_TYPE -->
     <br><dt><code>SO_TYPE</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- speed_t -->
     <br><dt><code>speed_t</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Speed.html#Line-Speed">Line Speed</a>.

     <!-- sprintf -->
     <br><dt><code>int sprintf (char *</code><var>s</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Formatted-Output-Functions.html#Formatted-Output-Functions">Formatted Output Functions</a>.

     <!-- sqrt -->
     <br><dt><code>double sqrt (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- sqrtf -->
     <br><dt><code>float sqrtf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- sqrtl -->
     <br><dt><code>long double sqrtl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Exponents-and-Logarithms.html#Exponents-and-Logarithms">Exponents and Logarithms</a>.

     <!-- srand -->
     <br><dt><code>void srand (unsigned int </code><var>seed</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="ISO-Random.html#ISO-Random">ISO Random</a>.

     <!-- srand48 -->
     <br><dt><code>void srand48 (long int </code><var>seedval</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- srand48_r -->
     <br><dt><code>int srand48_r (long int </code><var>seedval</var><code>, struct drand48_data *</code><var>buffer</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="SVID-Random.html#SVID-Random">SVID Random</a>.

     <!-- srandom -->
     <br><dt><code>void srandom (unsigned int </code><var>seed</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- srandom_r -->
     <br><dt><code>int srandom_r (unsigned int </code><var>seed</var><code>, struct random_data *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- sscanf -->
     <br><dt><code>int sscanf (const char *</code><var>s</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Formatted-Input-Functions.html#Formatted-Input-Functions">Formatted Input Functions</a>.

     <!-- ssignal -->
     <br><dt><code>sighandler_t ssignal (int </code><var>signum</var><code>, sighandler_t </code><var>action</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (SVID):  <a href="Basic-Signal-Handling.html#Basic-Signal-Handling">Basic Signal Handling</a>.

     <!-- SSIZE_MAX -->
     <br><dt><code>int SSIZE_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- ssize_t -->
     <br><dt><code>ssize_t</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="I_002fO-Primitives.html#I_002fO-Primitives">I/O Primitives</a>.

     <!-- stack_t -->
     <br><dt><code>stack_t</code><dd>
<samp><span class="file">signal.h</span></samp> (XPG):  <a href="Signal-Stack.html#Signal-Stack">Signal Stack</a>.

     <!-- stat -->
     <br><dt><code>int stat (const char *</code><var>filename</var><code>, struct stat *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Reading-Attributes.html#Reading-Attributes">Reading Attributes</a>.

     <!-- stat64 -->
     <br><dt><code>int stat64 (const char *</code><var>filename</var><code>, struct stat64 *</code><var>buf</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (Unix98):  <a href="Reading-Attributes.html#Reading-Attributes">Reading Attributes</a>.

     <!-- stderr -->
     <br><dt><code>FILE * stderr</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Standard-Streams.html#Standard-Streams">Standard Streams</a>.

     <!-- STDERR_FILENO -->
     <br><dt><code>STDERR_FILENO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Descriptors-and-Streams.html#Descriptors-and-Streams">Descriptors and Streams</a>.

     <!-- stdin -->
     <br><dt><code>FILE * stdin</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Standard-Streams.html#Standard-Streams">Standard Streams</a>.

     <!-- STDIN_FILENO -->
     <br><dt><code>STDIN_FILENO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Descriptors-and-Streams.html#Descriptors-and-Streams">Descriptors and Streams</a>.

     <!-- stdout -->
     <br><dt><code>FILE * stdout</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Standard-Streams.html#Standard-Streams">Standard Streams</a>.

     <!-- STDOUT_FILENO -->
     <br><dt><code>STDOUT_FILENO</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Descriptors-and-Streams.html#Descriptors-and-Streams">Descriptors and Streams</a>.

     <!-- stime -->
     <br><dt><code>int stime (time_t *</code><var>newtime</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (SVID, XPG):  <a href="Simple-Calendar-Time.html#Simple-Calendar-Time">Simple Calendar Time</a>.

     <!-- stpcpy -->
     <br><dt><code>char * stpcpy (char *restrict </code><var>to</var><code>, const char *restrict </code><var>from</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (Unknown origin):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- stpncpy -->
     <br><dt><code>char * stpncpy (char *restrict </code><var>to</var><code>, const char *restrict </code><var>from</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strcasecmp -->
     <br><dt><code>int strcasecmp (const char *</code><var>s1</var><code>, const char *</code><var>s2</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- strcasestr -->
     <br><dt><code>char * strcasestr (const char *</code><var>haystack</var><code>, const char *</code><var>needle</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strcat -->
     <br><dt><code>char * strcat (char *restrict </code><var>to</var><code>, const char *restrict </code><var>from</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strchr -->
     <br><dt><code>char * strchr (const char *</code><var>string</var><code>, int </code><var>c</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strchrnul -->
     <br><dt><code>char * strchrnul (const char *</code><var>string</var><code>, int </code><var>c</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strcmp -->
     <br><dt><code>int strcmp (const char *</code><var>s1</var><code>, const char *</code><var>s2</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- strcoll -->
     <br><dt><code>int strcoll (const char *</code><var>s1</var><code>, const char *</code><var>s2</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Collation-Functions.html#Collation-Functions">Collation Functions</a>.

     <!-- strcpy -->
     <br><dt><code>char * strcpy (char *restrict </code><var>to</var><code>, const char *restrict </code><var>from</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strcspn -->
     <br><dt><code>size_t strcspn (const char *</code><var>string</var><code>, const char *</code><var>stopset</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strdup -->
     <br><dt><code>char * strdup (const char *</code><var>s</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (SVID):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strdupa -->
     <br><dt><code>char * strdupa (const char *</code><var>s</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- STREAM_MAX -->
     <br><dt><code>int STREAM_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- strerror -->
     <br><dt><code>char * strerror (int </code><var>errnum</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- strerror_r -->
     <br><dt><code>char * strerror_r (int </code><var>errnum</var><code>, char *</code><var>buf</var><code>, size_t </code><var>n</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- strfry -->
     <br><dt><code>char * strfry (char *</code><var>string</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="strfry.html#strfry">strfry</a>.

     <!-- strftime -->
     <br><dt><code>size_t strftime (char *</code><var>s</var><code>, size_t </code><var>size</var><code>, const char *</code><var>template</var><code>, const struct tm *</code><var>brokentime</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Formatting-Calendar-Time.html#Formatting-Calendar-Time">Formatting Calendar Time</a>.

     <!-- strlen -->
     <br><dt><code>size_t strlen (const char *</code><var>s</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="String-Length.html#String-Length">String Length</a>.

     <!-- strncasecmp -->
     <br><dt><code>int strncasecmp (const char *</code><var>s1</var><code>, const char *</code><var>s2</var><code>, size_t </code><var>n</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- strncat -->
     <br><dt><code>char * strncat (char *restrict </code><var>to</var><code>, const char *restrict </code><var>from</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strncmp -->
     <br><dt><code>int strncmp (const char *</code><var>s1</var><code>, const char *</code><var>s2</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- strncpy -->
     <br><dt><code>char * strncpy (char *restrict </code><var>to</var><code>, const char *restrict </code><var>from</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strndup -->
     <br><dt><code>char * strndup (const char *</code><var>s</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strndupa -->
     <br><dt><code>char * strndupa (const char *</code><var>s</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- strnlen -->
     <br><dt><code>size_t strnlen (const char *</code><var>s</var><code>, size_t </code><var>maxlen</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="String-Length.html#String-Length">String Length</a>.

     <!-- strpbrk -->
     <br><dt><code>char * strpbrk (const char *</code><var>string</var><code>, const char *</code><var>stopset</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strptime -->
     <br><dt><code>char * strptime (const char *</code><var>s</var><code>, const char *</code><var>fmt</var><code>, struct tm *</code><var>tp</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (XPG4):  <a href="Low_002dLevel-Time-String-Parsing.html#Low_002dLevel-Time-String-Parsing">Low-Level Time String Parsing</a>.

     <!-- strrchr -->
     <br><dt><code>char * strrchr (const char *</code><var>string</var><code>, int </code><var>c</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strsep -->
     <br><dt><code>char * strsep (char **</code><var>string_ptr</var><code>, const char *</code><var>delimiter</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (BSD):  <a href="Finding-Tokens-in-a-String.html#Finding-Tokens-in-a-String">Finding Tokens in a String</a>.

     <!-- strsignal -->
     <br><dt><code>char * strsignal (int </code><var>signum</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="Signal-Messages.html#Signal-Messages">Signal Messages</a>.

     <!-- strspn -->
     <br><dt><code>size_t strspn (const char *</code><var>string</var><code>, const char *</code><var>skipset</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strstr -->
     <br><dt><code>char * strstr (const char *</code><var>haystack</var><code>, const char *</code><var>needle</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- strtod -->
     <br><dt><code>double strtod (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Floats.html#Parsing-of-Floats">Parsing of Floats</a>.

     <!-- strtof -->
     <br><dt><code>float strtof (const char *</code><var>string</var><code>, char **</code><var>tailptr</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Floats.html#Parsing-of-Floats">Parsing of Floats</a>.

     <!-- strtoimax -->
     <br><dt><code>intmax_t strtoimax (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">inttypes.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- strtok -->
     <br><dt><code>char * strtok (char *restrict </code><var>newstring</var><code>, const char *restrict </code><var>delimiters</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Finding-Tokens-in-a-String.html#Finding-Tokens-in-a-String">Finding Tokens in a String</a>.

     <!-- strtok_r -->
     <br><dt><code>char * strtok_r (char *</code><var>newstring</var><code>, const char *</code><var>delimiters</var><code>, char **</code><var>save_ptr</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (POSIX):  <a href="Finding-Tokens-in-a-String.html#Finding-Tokens-in-a-String">Finding Tokens in a String</a>.

     <!-- strtol -->
     <br><dt><code>long int strtol (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- strtold -->
     <br><dt><code>long double strtold (const char *</code><var>string</var><code>, char **</code><var>tailptr</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Floats.html#Parsing-of-Floats">Parsing of Floats</a>.

     <!-- strtoll -->
     <br><dt><code>long long int strtoll (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- strtoq -->
     <br><dt><code>long long int strtoq (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- strtoul -->
     <br><dt><code>unsigned long int strtoul (const char *retrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- strtoull -->
     <br><dt><code>unsigned long long int strtoull (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- strtoumax -->
     <br><dt><code>uintmax_t strtoumax (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">inttypes.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- strtouq -->
     <br><dt><code>unsigned long long int strtouq (const char *restrict </code><var>string</var><code>, char **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- struct aiocb -->
     <br><dt><code>struct aiocb</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Asynchronous-I_002fO.html#Asynchronous-I_002fO">Asynchronous I/O</a>.

     <!-- struct aiocb64 -->
     <br><dt><code>struct aiocb64</code><dd>
<samp><span class="file">aio.h</span></samp> (POSIX.1b):  <a href="Asynchronous-I_002fO.html#Asynchronous-I_002fO">Asynchronous I/O</a>.

     <!-- struct aioinit -->
     <br><dt><code>struct aioinit</code><dd>
<samp><span class="file">aio.h</span></samp> (GNU):  <a href="Configuration-of-AIO.html#Configuration-of-AIO">Configuration of AIO</a>.

     <!-- struct argp -->
     <br><dt><code>struct argp</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Parsers.html#Argp-Parsers">Argp Parsers</a>.

     <!-- struct argp_child -->
     <br><dt><code>struct argp_child</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Children.html#Argp-Children">Argp Children</a>.

     <!-- struct argp_option -->
     <br><dt><code>struct argp_option</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Option-Vectors.html#Argp-Option-Vectors">Argp Option Vectors</a>.

     <!-- struct argp_state -->
     <br><dt><code>struct argp_state</code><dd>
<samp><span class="file">argp.h</span></samp> (GNU):  <a href="Argp-Parsing-State.html#Argp-Parsing-State">Argp Parsing State</a>.

     <!-- struct dirent -->
     <br><dt><code>struct dirent</code><dd>
<samp><span class="file">dirent.h</span></samp> (POSIX.1):  <a href="Directory-Entries.html#Directory-Entries">Directory Entries</a>.

     <!-- struct exit_status -->
     <br><dt><code>struct exit_status</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- struct flock -->
     <br><dt><code>struct flock</code><dd>
<samp><span class="file">fcntl.h</span></samp> (POSIX.1):  <a href="File-Locks.html#File-Locks">File Locks</a>.

     <!-- struct fstab -->
     <br><dt><code>struct fstab</code><dd>
<samp><span class="file">fstab.h</span></samp> (BSD):  <a href="fstab.html#fstab">fstab</a>.

     <!-- struct FTW -->
     <br><dt><code>struct FTW</code><dd>
<samp><span class="file">ftw.h</span></samp> (XPG4.2):  <a href="Working-with-Directory-Trees.html#Working-with-Directory-Trees">Working with Directory Trees</a>.

     <!-- struct __gconv_step -->
     <br><dt><code>struct __gconv_step</code><dd>
<samp><span class="file">gconv.h</span></samp> (GNU):  <a href="glibc-iconv-Implementation.html#glibc-iconv-Implementation">glibc iconv Implementation</a>.

     <!-- struct __gconv_step_data -->
     <br><dt><code>struct __gconv_step_data</code><dd>
<samp><span class="file">gconv.h</span></samp> (GNU):  <a href="glibc-iconv-Implementation.html#glibc-iconv-Implementation">glibc iconv Implementation</a>.

     <!-- struct group -->
     <br><dt><code>struct group</code><dd>
<samp><span class="file">grp.h</span></samp> (POSIX.1):  <a href="Group-Data-Structure.html#Group-Data-Structure">Group Data Structure</a>.

     <!-- struct hostent -->
     <br><dt><code>struct hostent</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- struct if_nameindex -->
     <br><dt><code>struct if_nameindex</code><dd>
<samp><span class="file">net/if.h</span></samp> (IPv6 basic API):  <a href="Interface-Naming.html#Interface-Naming">Interface Naming</a>.

     <!-- struct in6_addr -->
     <br><dt><code>struct in6_addr</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (IPv6 basic API):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- struct in_addr -->
     <br><dt><code>struct in_addr</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Host-Address-Data-Type.html#Host-Address-Data-Type">Host Address Data Type</a>.

     <!-- struct iovec -->
     <br><dt><code>struct iovec</code><dd>
<samp><span class="file">sys/uio.h</span></samp> (BSD):  <a href="Scatter_002dGather.html#Scatter_002dGather">Scatter-Gather</a>.

     <!-- struct itimerval -->
     <br><dt><code>struct itimerval</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="Setting-an-Alarm.html#Setting-an-Alarm">Setting an Alarm</a>.

     <!-- struct lconv -->
     <br><dt><code>struct lconv</code><dd>
<samp><span class="file">locale.h</span></samp> (ISO):  <a href="The-Lame-Way-to-Locale-Data.html#The-Lame-Way-to-Locale-Data">The Lame Way to Locale Data</a>.

     <!-- struct linger -->
     <br><dt><code>struct linger</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Socket_002dLevel-Options.html#Socket_002dLevel-Options">Socket-Level Options</a>.

     <!-- struct mallinfo -->
     <br><dt><code>struct mallinfo</code><dd>
<samp><span class="file">malloc.h</span></samp> (GNU):  <a href="Statistics-of-Malloc.html#Statistics-of-Malloc">Statistics of Malloc</a>.

     <!-- struct mntent -->
     <br><dt><code>struct mntent</code><dd>
<samp><span class="file">mntent.h</span></samp> (BSD):  <a href="mtab.html#mtab">mtab</a>.

     <!-- struct msghdr -->
     <br><dt><code>struct msghdr</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Receiving-Datagrams.html#Receiving-Datagrams">Receiving Datagrams</a>.

     <!-- struct netent -->
     <br><dt><code>struct netent</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Networks-Database.html#Networks-Database">Networks Database</a>.

     <!-- struct obstack -->
     <br><dt><code>struct obstack</code><dd>
<samp><span class="file">obstack.h</span></samp> (GNU):  <a href="Creating-Obstacks.html#Creating-Obstacks">Creating Obstacks</a>.

     <!-- struct option -->
     <br><dt><code>struct option</code><dd>
<samp><span class="file">getopt.h</span></samp> (GNU):  <a href="Getopt-Long-Options.html#Getopt-Long-Options">Getopt Long Options</a>.

     <!-- struct passwd -->
     <br><dt><code>struct passwd</code><dd>
<samp><span class="file">pwd.h</span></samp> (POSIX.1):  <a href="User-Data-Structure.html#User-Data-Structure">User Data Structure</a>.

     <!-- struct printf_info -->
     <br><dt><code>struct printf_info</code><dd>
<samp><span class="file">printf.h</span></samp> (GNU):  <a href="Conversion-Specifier-Options.html#Conversion-Specifier-Options">Conversion Specifier Options</a>.

     <!-- struct protoent -->
     <br><dt><code>struct protoent</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Protocols-Database.html#Protocols-Database">Protocols Database</a>.

     <!-- struct random_data -->
     <br><dt><code>struct random_data</code><dd>
<samp><span class="file">stdlib.h</span></samp> (GNU):  <a href="BSD-Random.html#BSD-Random">BSD Random</a>.

     <!-- struct rlimit -->
     <br><dt><code>struct rlimit</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- struct rlimit64 -->
     <br><dt><code>struct rlimit64</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (Unix98):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- struct rusage -->
     <br><dt><code>struct rusage</code><dd>
<samp><span class="file">sys/resource.h</span></samp> (BSD):  <a href="Resource-Usage.html#Resource-Usage">Resource Usage</a>.

     <!-- struct sched_param -->
     <br><dt><code>struct sched_param</code><dd>
<samp><span class="file">sched.h</span></samp> (POSIX):  <a href="Basic-Scheduling-Functions.html#Basic-Scheduling-Functions">Basic Scheduling Functions</a>.

     <!-- struct servent -->
     <br><dt><code>struct servent</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Services-Database.html#Services-Database">Services Database</a>.

     <!-- struct sgttyb -->
     <br><dt><code>struct sgttyb</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="BSD-Terminal-Modes.html#BSD-Terminal-Modes">BSD Terminal Modes</a>.

     <!-- struct sigaction -->
     <br><dt><code>struct sigaction</code><dd>
<samp><span class="file">signal.h</span></samp> (POSIX.1):  <a href="Advanced-Signal-Handling.html#Advanced-Signal-Handling">Advanced Signal Handling</a>.

     <!-- struct sigstack -->
     <br><dt><code>struct sigstack</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="Signal-Stack.html#Signal-Stack">Signal Stack</a>.

     <!-- struct sigvec -->
     <br><dt><code>struct sigvec</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="BSD-Handler.html#BSD-Handler">BSD Handler</a>.

     <!-- struct sockaddr -->
     <br><dt><code>struct sockaddr</code><dd>
<samp><span class="file">sys/socket.h</span></samp> (BSD):  <a href="Address-Formats.html#Address-Formats">Address Formats</a>.

     <!-- struct sockaddr_in -->
     <br><dt><code>struct sockaddr_in</code><dd>
<samp><span class="file">netinet/in.h</span></samp> (BSD):  <a href="Internet-Address-Formats.html#Internet-Address-Formats">Internet Address Formats</a>.

     <!-- struct sockaddr_un -->
     <br><dt><code>struct sockaddr_un</code><dd>
<samp><span class="file">sys/un.h</span></samp> (BSD):  <a href="Local-Namespace-Details.html#Local-Namespace-Details">Local Namespace Details</a>.

     <!-- struct stat -->
     <br><dt><code>struct stat</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- struct stat64 -->
     <br><dt><code>struct stat64</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (LFS):  <a href="Attribute-Meanings.html#Attribute-Meanings">Attribute Meanings</a>.

     <!-- struct termios -->
     <br><dt><code>struct termios</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Data-Types.html#Mode-Data-Types">Mode Data Types</a>.

     <!-- struct timespec -->
     <br><dt><code>struct timespec</code><dd>
<samp><span class="file">sys/time.h</span></samp> (POSIX.1):  <a href="Elapsed-Time.html#Elapsed-Time">Elapsed Time</a>.

     <!-- struct timeval -->
     <br><dt><code>struct timeval</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="Elapsed-Time.html#Elapsed-Time">Elapsed Time</a>.

     <!-- struct timezone -->
     <br><dt><code>struct timezone</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="High_002dResolution-Calendar.html#High_002dResolution-Calendar">High-Resolution Calendar</a>.

     <!-- struct tm -->
     <br><dt><code>struct tm</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- struct tms -->
     <br><dt><code>struct tms</code><dd>
<samp><span class="file">sys/times.h</span></samp> (POSIX.1):  <a href="Processor-Time.html#Processor-Time">Processor Time</a>.

     <!-- struct utimbuf -->
     <br><dt><code>struct utimbuf</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1):  <a href="File-Times.html#File-Times">File Times</a>.

     <!-- struct utsname -->
     <br><dt><code>struct utsname</code><dd>
<samp><span class="file">sys/utsname.h</span></samp> (POSIX.1):  <a href="Platform-Type.html#Platform-Type">Platform Type</a>.

     <!-- strverscmp -->
     <br><dt><code>int strverscmp (const char *</code><var>s1</var><code>, const char *</code><var>s2</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (GNU):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- strxfrm -->
     <br><dt><code>size_t strxfrm (char *restrict </code><var>to</var><code>, const char *restrict </code><var>from</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">string.h</span></samp> (ISO):  <a href="Collation-Functions.html#Collation-Functions">Collation Functions</a>.

     <!-- stty -->
     <br><dt><code>int stty (int </code><var>filedes</var><code>, struct sgttyb * attributes)</code><dd>
<samp><span class="file">sgtty.h</span></samp> (BSD):  <a href="BSD-Terminal-Modes.html#BSD-Terminal-Modes">BSD Terminal Modes</a>.

     <!-- S_TYPEISMQ -->
     <br><dt><code>int S_TYPEISMQ (struct stat *</code><var>s</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_TYPEISSEM -->
     <br><dt><code>int S_TYPEISSEM (struct stat *</code><var>s</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- S_TYPEISSHM -->
     <br><dt><code>int S_TYPEISSHM (struct stat *</code><var>s</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX):  <a href="Testing-File-Type.html#Testing-File-Type">Testing File Type</a>.

     <!-- SUN_LEN -->
     <br><dt><code>int SUN_LEN (</code><em>struct sockaddr_un *</em> <var>ptr</var><code>)</code><dd>
<samp><span class="file">sys/un.h</span></samp> (BSD):  <a href="Local-Namespace-Details.html#Local-Namespace-Details">Local Namespace Details</a>.

     <!-- _SVID_SOURCE -->
     <br><dt><code>_SVID_SOURCE</code><dd>
(GNU):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- SV_INTERRUPT -->
     <br><dt><code>int SV_INTERRUPT</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="BSD-Handler.html#BSD-Handler">BSD Handler</a>.

     <!-- SV_ONSTACK -->
     <br><dt><code>int SV_ONSTACK</code><dd>
<samp><span class="file">signal.h</span></samp> (BSD):  <a href="BSD-Handler.html#BSD-Handler">BSD Handler</a>.

     <!-- SV_RESETHAND -->
     <br><dt><code>int SV_RESETHAND</code><dd>
<samp><span class="file">signal.h</span></samp> (Sun):  <a href="BSD-Handler.html#BSD-Handler">BSD Handler</a>.

     <!-- swapcontext -->
     <br><dt><code>int swapcontext (ucontext_t *restrict </code><var>oucp</var><code>, const ucontext_t *restrict </code><var>ucp</var><code>)</code><dd>
<samp><span class="file">ucontext.h</span></samp> (SVID):  <a href="System-V-contexts.html#System-V-contexts">System V contexts</a>.

     <!-- swprintf -->
     <br><dt><code>int swprintf (wchar_t *</code><var>s</var><code>, size_t </code><var>size</var><code>, const wchar_t *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Formatted-Output-Functions.html#Formatted-Output-Functions">Formatted Output Functions</a>.

     <!-- swscanf -->
     <br><dt><code>int swscanf (const wchar_t *</code><var>ws</var><code>, const char *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Formatted-Input-Functions.html#Formatted-Input-Functions">Formatted Input Functions</a>.

     <!-- symlink -->
     <br><dt><code>int symlink (const char *</code><var>oldname</var><code>, const char *</code><var>newname</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Symbolic-Links.html#Symbolic-Links">Symbolic Links</a>.

     <!-- SYMLINK_MAX -->
     <br><dt><code>SYMLINK_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="File-Minimums.html#File-Minimums">File Minimums</a>.

     <!-- sync -->
     <br><dt><code>int sync (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="Synchronizing-I_002fO.html#Synchronizing-I_002fO">Synchronizing I/O</a>.

     <!-- syscall -->
     <br><dt><code>long int syscall (long int </code><var>sysno</var><code>, ...)</code><dd>
<samp><span class="file">unistd.h</span></samp> (???):  <a href="System-Calls.html#System-Calls">System Calls</a>.

     <!-- sysconf -->
     <br><dt><code>long int sysconf (int </code><var>parameter</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Sysconf-Definition.html#Sysconf-Definition">Sysconf Definition</a>.

     <!-- sysctl -->
     <br><dt><code>int sysctl (int *</code><var>names</var><code>, int </code><var>nlen</var><code>, void *</code><var>oldval</var><code>, size_t *</code><var>oldlenp</var><code>, void *</code><var>newval</var><code>, size_t </code><var>newlen</var><code>)</code><dd>
<samp><span class="file">sysctl.h</span></samp> (BSD):  <a href="System-Parameters.html#System-Parameters">System Parameters</a>.

     <!-- syslog -->
     <br><dt><code>void syslog (int </code><var>facility_priority</var><code>, char *</code><var>format</var><code>, ...)</code><dd>
<samp><span class="file">syslog.h</span></samp> (BSD):  <a href="syslog_003b-vsyslog.html#syslog_003b-vsyslog">syslog; vsyslog</a>.

     <!-- system -->
     <br><dt><code>int system (const char *</code><var>command</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Running-a-Command.html#Running-a-Command">Running a Command</a>.

     <!-- sysv_signal -->
     <br><dt><code>sighandler_t sysv_signal (int </code><var>signum</var><code>, sighandler_t </code><var>action</var><code>)</code><dd>
<samp><span class="file">signal.h</span></samp> (GNU):  <a href="Basic-Signal-Handling.html#Basic-Signal-Handling">Basic Signal Handling</a>.

     <!-- tan -->
     <br><dt><code>double tan (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- tanf -->
     <br><dt><code>float tanf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- tanh -->
     <br><dt><code>double tanh (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- tanhf -->
     <br><dt><code>float tanhf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- tanhl -->
     <br><dt><code>long double tanhl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Hyperbolic-Functions.html#Hyperbolic-Functions">Hyperbolic Functions</a>.

     <!-- tanl -->
     <br><dt><code>long double tanl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Trig-Functions.html#Trig-Functions">Trig Functions</a>.

     <!-- tcdrain -->
     <br><dt><code>int tcdrain (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Control.html#Line-Control">Line Control</a>.

     <!-- tcflag_t -->
     <br><dt><code>tcflag_t</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Data-Types.html#Mode-Data-Types">Mode Data Types</a>.

     <!-- tcflow -->
     <br><dt><code>int tcflow (int </code><var>filedes</var><code>, int </code><var>action</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Control.html#Line-Control">Line Control</a>.

     <!-- tcflush -->
     <br><dt><code>int tcflush (int </code><var>filedes</var><code>, int </code><var>queue</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Control.html#Line-Control">Line Control</a>.

     <!-- tcgetattr -->
     <br><dt><code>int tcgetattr (int </code><var>filedes</var><code>, struct termios *</code><var>termios-p</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Functions.html#Mode-Functions">Mode Functions</a>.

     <!-- tcgetpgrp -->
     <br><dt><code>pid_t tcgetpgrp (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Terminal-Access-Functions.html#Terminal-Access-Functions">Terminal Access Functions</a>.

     <!-- tcgetsid -->
     <br><dt><code>pid_t tcgetsid (int </code><var>fildes</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (Unix98):  <a href="Terminal-Access-Functions.html#Terminal-Access-Functions">Terminal Access Functions</a>.

     <!-- TCSADRAIN -->
     <br><dt><code>TCSADRAIN</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Functions.html#Mode-Functions">Mode Functions</a>.

     <!-- TCSAFLUSH -->
     <br><dt><code>TCSAFLUSH</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Functions.html#Mode-Functions">Mode Functions</a>.

     <!-- TCSANOW -->
     <br><dt><code>TCSANOW</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Functions.html#Mode-Functions">Mode Functions</a>.

     <!-- TCSASOFT -->
     <br><dt><code>TCSASOFT</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Mode-Functions.html#Mode-Functions">Mode Functions</a>.

     <!-- tcsendbreak -->
     <br><dt><code>int tcsendbreak (int </code><var>filedes</var><code>, int </code><var>duration</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Line-Control.html#Line-Control">Line Control</a>.

     <!-- tcsetattr -->
     <br><dt><code>int tcsetattr (int </code><var>filedes</var><code>, int </code><var>when</var><code>, const struct termios *</code><var>termios-p</var><code>)</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Mode-Functions.html#Mode-Functions">Mode Functions</a>.

     <!-- tcsetpgrp -->
     <br><dt><code>int tcsetpgrp (int </code><var>filedes</var><code>, pid_t </code><var>pgid</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Terminal-Access-Functions.html#Terminal-Access-Functions">Terminal Access Functions</a>.

     <!-- tdelete -->
     <br><dt><code>void * tdelete (const void *</code><var>key</var><code>, void **</code><var>rootp</var><code>, comparison_fn_t </code><var>compar</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Tree-Search-Function.html#Tree-Search-Function">Tree Search Function</a>.

     <!-- tdestroy -->
     <br><dt><code>void tdestroy (void *</code><var>vroot</var><code>, __free_fn_t </code><var>freefct</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (GNU):  <a href="Tree-Search-Function.html#Tree-Search-Function">Tree Search Function</a>.

     <!-- TEMP_FAILURE_RETRY -->
     <br><dt><code>TEMP_FAILURE_RETRY (</code><var>expression</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (GNU):  <a href="Interrupted-Primitives.html#Interrupted-Primitives">Interrupted Primitives</a>.

     <!-- tempnam -->
     <br><dt><code>char * tempnam (const char *</code><var>dir</var><code>, const char *</code><var>prefix</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (SVID):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- textdomain -->
     <br><dt><code>char * textdomain (const char *</code><var>domainname</var><code>)</code><dd>
<samp><span class="file">libintl.h</span></samp> (GNU):  <a href="Locating-gettext-catalog.html#Locating-gettext-catalog">Locating gettext catalog</a>.

     <!-- tfind -->
     <br><dt><code>void * tfind (const void *</code><var>key</var><code>, void *const *</code><var>rootp</var><code>, comparison_fn_t </code><var>compar</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Tree-Search-Function.html#Tree-Search-Function">Tree Search Function</a>.

     <!-- tgamma -->
     <br><dt><code>double tgamma (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (XPG, ISO):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- tgammaf -->
     <br><dt><code>float tgammaf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (XPG, ISO):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- tgammal -->
     <br><dt><code>long double tgammal (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (XPG, ISO):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- time -->
     <br><dt><code>time_t time (time_t *</code><var>result</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Simple-Calendar-Time.html#Simple-Calendar-Time">Simple Calendar Time</a>.

     <!-- timegm -->
     <br><dt><code>time_t timegm (struct tm *</code><var>brokentime</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (???):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- timelocal -->
     <br><dt><code>time_t timelocal (struct tm *</code><var>brokentime</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (???):  <a href="Broken_002ddown-Time.html#Broken_002ddown-Time">Broken-down Time</a>.

     <!-- times -->
     <br><dt><code>clock_t times (struct tms *</code><var>buffer</var><code>)</code><dd>
<samp><span class="file">sys/times.h</span></samp> (POSIX.1):  <a href="Processor-Time.html#Processor-Time">Processor Time</a>.

     <!-- time_t -->
     <br><dt><code>time_t</code><dd>
<samp><span class="file">time.h</span></samp> (ISO):  <a href="Simple-Calendar-Time.html#Simple-Calendar-Time">Simple Calendar Time</a>.

     <!-- timezone -->
     <br><dt><code>long int timezone</code><dd>
<samp><span class="file">time.h</span></samp> (SVID):  <a href="Time-Zone-Functions.html#Time-Zone-Functions">Time Zone Functions</a>.

     <!-- tmpfile -->
     <br><dt><code>FILE * tmpfile (void)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- tmpfile64 -->
     <br><dt><code>FILE * tmpfile64 (void)</code><dd>
<samp><span class="file">stdio.h</span></samp> (Unix98):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- TMP_MAX -->
     <br><dt><code>int TMP_MAX</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- tmpnam -->
     <br><dt><code>char * tmpnam (char *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- tmpnam_r -->
     <br><dt><code>char * tmpnam_r (char *</code><var>result</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Temporary-Files.html#Temporary-Files">Temporary Files</a>.

     <!-- toascii -->
     <br><dt><code>int toascii (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (SVID, BSD):  <a href="Case-Conversion.html#Case-Conversion">Case Conversion</a>.

     <!-- _tolower -->
     <br><dt><code>int _tolower (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (SVID):  <a href="Case-Conversion.html#Case-Conversion">Case Conversion</a>.

     <!-- tolower -->
     <br><dt><code>int tolower (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Case-Conversion.html#Case-Conversion">Case Conversion</a>.

     <!-- TOSTOP -->
     <br><dt><code>tcflag_t TOSTOP</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Local-Modes.html#Local-Modes">Local Modes</a>.

     <!-- _toupper -->
     <br><dt><code>int _toupper (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (SVID):  <a href="Case-Conversion.html#Case-Conversion">Case Conversion</a>.

     <!-- toupper -->
     <br><dt><code>int toupper (int </code><var>c</var><code>)</code><dd>
<samp><span class="file">ctype.h</span></samp> (ISO):  <a href="Case-Conversion.html#Case-Conversion">Case Conversion</a>.

     <!-- towctrans -->
     <br><dt><code>wint_t towctrans (wint_t </code><var>wc</var><code>, wctrans_t </code><var>desc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Wide-Character-Case-Conversion.html#Wide-Character-Case-Conversion">Wide Character Case Conversion</a>.

     <!-- towlower -->
     <br><dt><code>wint_t towlower (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Wide-Character-Case-Conversion.html#Wide-Character-Case-Conversion">Wide Character Case Conversion</a>.

     <!-- towupper -->
     <br><dt><code>wint_t towupper (wint_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Wide-Character-Case-Conversion.html#Wide-Character-Case-Conversion">Wide Character Case Conversion</a>.

     <!-- trunc -->
     <br><dt><code>double trunc (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- truncate -->
     <br><dt><code>int truncate (const char *</code><var>filename</var><code>, off_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (X/Open):  <a href="File-Size.html#File-Size">File Size</a>.

     <!-- truncate64 -->
     <br><dt><code>int truncate64 (const char *</code><var>name</var><code>, off64_t </code><var>length</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (Unix98):  <a href="File-Size.html#File-Size">File Size</a>.

     <!-- truncf -->
     <br><dt><code>float truncf (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- truncl -->
     <br><dt><code>long double truncl (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (ISO):  <a href="Rounding-Functions.html#Rounding-Functions">Rounding Functions</a>.

     <!-- TRY_AGAIN -->
     <br><dt><code>TRY_AGAIN</code><dd>
<samp><span class="file">netdb.h</span></samp> (BSD):  <a href="Host-Names.html#Host-Names">Host Names</a>.

     <!-- tsearch -->
     <br><dt><code>void * tsearch (const void *</code><var>key</var><code>, void **</code><var>rootp</var><code>, comparison_fn_t </code><var>compar</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Tree-Search-Function.html#Tree-Search-Function">Tree Search Function</a>.

     <!-- ttyname -->
     <br><dt><code>char * ttyname (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Is-It-a-Terminal.html#Is-It-a-Terminal">Is It a Terminal</a>.

     <!-- ttyname_r -->
     <br><dt><code>int ttyname_r (int </code><var>filedes</var><code>, char *</code><var>buf</var><code>, size_t </code><var>len</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Is-It-a-Terminal.html#Is-It-a-Terminal">Is It a Terminal</a>.

     <!-- twalk -->
     <br><dt><code>void twalk (const void *</code><var>root</var><code>, __action_fn_t </code><var>action</var><code>)</code><dd>
<samp><span class="file">search.h</span></samp> (SVID):  <a href="Tree-Search-Function.html#Tree-Search-Function">Tree Search Function</a>.

     <!-- tzname -->
     <br><dt><code>char * tzname [2]</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1):  <a href="Time-Zone-Functions.html#Time-Zone-Functions">Time Zone Functions</a>.

     <!-- TZNAME_MAX -->
     <br><dt><code>int TZNAME_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (POSIX.1):  <a href="General-Limits.html#General-Limits">General Limits</a>.

     <!-- tzset -->
     <br><dt><code>void tzset (void)</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1):  <a href="Time-Zone-Functions.html#Time-Zone-Functions">Time Zone Functions</a>.

     <!-- UCHAR_MAX -->
     <br><dt><code>UCHAR_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- ucontext_t -->
     <br><dt><code>ucontext_t</code><dd>
<samp><span class="file">ucontext.h</span></samp> (SVID):  <a href="System-V-contexts.html#System-V-contexts">System V contexts</a>.

     <!-- uid_t -->
     <br><dt><code>uid_t</code><dd>
<samp><span class="file">sys/types.h</span></samp> (POSIX.1):  <a href="Reading-Persona.html#Reading-Persona">Reading Persona</a>.

     <!-- UINT_MAX -->
     <br><dt><code>UINT_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- ulimit -->
     <br><dt><code>int ulimit (int </code><var>cmd</var><code>, ...)</code><dd>
<samp><span class="file">ulimit.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- ULONG_LONG_MAX -->
     <br><dt><code>ULONG_LONG_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- ULONG_MAX -->
     <br><dt><code>ULONG_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- umask -->
     <br><dt><code>mode_t umask (mode_t </code><var>mask</var><code>)</code><dd>
<samp><span class="file">sys/stat.h</span></samp> (POSIX.1):  <a href="Setting-Permissions.html#Setting-Permissions">Setting Permissions</a>.

     <!-- umount -->
     <br><dt><code>int umount (const char *</code><var>file</var><code>)</code><dd>
<samp><span class="file">sys/mount.h</span></samp> (SVID, GNU):  <a href="Mount_002dUnmount_002dRemount.html#Mount_002dUnmount_002dRemount">Mount-Unmount-Remount</a>.

     <!-- umount2 -->
     <br><dt><code>int umount2 (const char *</code><var>file</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">sys/mount.h</span></samp> (GNU):  <a href="Mount_002dUnmount_002dRemount.html#Mount_002dUnmount_002dRemount">Mount-Unmount-Remount</a>.

     <!-- uname -->
     <br><dt><code>int uname (struct utsname *</code><var>info</var><code>)</code><dd>
<samp><span class="file">sys/utsname.h</span></samp> (POSIX.1):  <a href="Platform-Type.html#Platform-Type">Platform Type</a>.

     <!-- ungetc -->
     <br><dt><code>int ungetc (int </code><var>c</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="How-Unread.html#How-Unread">How Unread</a>.

     <!-- ungetwc -->
     <br><dt><code>wint_t ungetwc (wint_t </code><var>wc</var><code>, FILE *</code><var>stream</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="How-Unread.html#How-Unread">How Unread</a>.

     <!-- union wait -->
     <br><dt><code>union wait</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (BSD):  <a href="BSD-Wait-Functions.html#BSD-Wait-Functions">BSD Wait Functions</a>.

     <!-- unlink -->
     <br><dt><code>int unlink (const char *</code><var>filename</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Deleting-Files.html#Deleting-Files">Deleting Files</a>.

     <!-- unlockpt -->
     <br><dt><code>int unlockpt (int </code><var>filedes</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (SVID, XPG4.2):  <a href="Allocation.html#Allocation">Allocation</a>.

     <!-- unsetenv -->
     <br><dt><code>int unsetenv (const char *</code><var>name</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Environment-Access.html#Environment-Access">Environment Access</a>.

     <!-- updwtmp -->
     <br><dt><code>void updwtmp (const char *</code><var>wtmp_file</var><code>, const struct utmp *</code><var>utmp</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- USER_PROCESS -->
     <br><dt><code>USER_PROCESS</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- USER_PROCESS -->
     <br><dt><code>USER_PROCESS</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- USHRT_MAX -->
     <br><dt><code>USHRT_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (ISO):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- utime -->
     <br><dt><code>int utime (const char *</code><var>filename</var><code>, const struct utimbuf *</code><var>times</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (POSIX.1):  <a href="File-Times.html#File-Times">File Times</a>.

     <!-- utimes -->
     <br><dt><code>int utimes (const char *</code><var>filename</var><code>, struct timeval </code><var>tvp</var><tt>[2]</tt><code>)</code><dd>
<samp><span class="file">sys/time.h</span></samp> (BSD):  <a href="File-Times.html#File-Times">File Times</a>.

     <!-- utmpname -->
     <br><dt><code>int utmpname (const char *</code><var>file</var><code>)</code><dd>
<samp><span class="file">utmp.h</span></samp> (SVID):  <a href="Manipulating-the-Database.html#Manipulating-the-Database">Manipulating the Database</a>.

     <!-- utmpxname -->
     <br><dt><code>int utmpxname (const char *</code><var>file</var><code>)</code><dd>
<samp><span class="file">utmpx.h</span></samp> (XPG4.2):  <a href="XPG-Functions.html#XPG-Functions">XPG Functions</a>.

     <!-- va_alist -->
     <br><dt><code>va_alist</code><dd>
<samp><span class="file">varargs.h</span></samp> (Unix):  <a href="Old-Varargs.html#Old-Varargs">Old Varargs</a>.

     <!-- va_arg -->
     <br><dt><var>type</var><code> va_arg (va_list </code><var>ap</var><code>, </code><var>type</var><code>)</code><dd>
<samp><span class="file">stdarg.h</span></samp> (ISO):  <a href="Argument-Macros.html#Argument-Macros">Argument Macros</a>.

     <!-- __va_copy -->
     <br><dt><code>void __va_copy (va_list </code><var>dest</var><code>, va_list </code><var>src</var><code>)</code><dd>
<samp><span class="file">stdarg.h</span></samp> (GNU):  <a href="Argument-Macros.html#Argument-Macros">Argument Macros</a>.

     <!-- va_dcl -->
     <br><dt><code>va_dcl</code><dd>
<samp><span class="file">varargs.h</span></samp> (Unix):  <a href="Old-Varargs.html#Old-Varargs">Old Varargs</a>.

     <!-- va_end -->
     <br><dt><code>void va_end (va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdarg.h</span></samp> (ISO):  <a href="Argument-Macros.html#Argument-Macros">Argument Macros</a>.

     <!-- va_list -->
     <br><dt><code>va_list</code><dd>
<samp><span class="file">stdarg.h</span></samp> (ISO):  <a href="Argument-Macros.html#Argument-Macros">Argument Macros</a>.

     <!-- valloc -->
     <br><dt><code>void * valloc (size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">malloc.h</span></samp>, <samp><span class="file">stdlib.h</span></samp> (BSD):  <a href="Aligned-Memory-Blocks.html#Aligned-Memory-Blocks">Aligned Memory Blocks</a>.

     <!-- vasprintf -->
     <br><dt><code>int vasprintf (char **</code><var>ptr</var><code>, const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- va_start -->
     <br><dt><code>void va_start (va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">varargs.h</span></samp> (Unix):  <a href="Old-Varargs.html#Old-Varargs">Old Varargs</a>.

     <!-- va_start -->
     <br><dt><code>void va_start (va_list </code><var>ap</var><code>, </code><var>last-required</var><code>)</code><dd>
<samp><span class="file">stdarg.h</span></samp> (ISO):  <a href="Argument-Macros.html#Argument-Macros">Argument Macros</a>.

     <!-- VDISCARD -->
     <br><dt><code>int VDISCARD</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Other-Special.html#Other-Special">Other Special</a>.

     <!-- VDSUSP -->
     <br><dt><code>int VDSUSP</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Signal-Characters.html#Signal-Characters">Signal Characters</a>.

     <!-- VEOF -->
     <br><dt><code>int VEOF</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Editing-Characters.html#Editing-Characters">Editing Characters</a>.

     <!-- VEOL -->
     <br><dt><code>int VEOL</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Editing-Characters.html#Editing-Characters">Editing Characters</a>.

     <!-- VEOL2 -->
     <br><dt><code>int VEOL2</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Editing-Characters.html#Editing-Characters">Editing Characters</a>.

     <!-- VERASE -->
     <br><dt><code>int VERASE</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Editing-Characters.html#Editing-Characters">Editing Characters</a>.

     <!-- verr -->
     <br><dt><code>void verr (int </code><var>status</var><code>, const char *</code><var>format</var><code>, va_list)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- verrx -->
     <br><dt><code>void verrx (int </code><var>status</var><code>, const char *</code><var>format</var><code>, va_list)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- versionsort -->
     <br><dt><code>int versionsort (const void *</code><var>a</var><code>, const void *</code><var>b</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (GNU):  <a href="Scanning-Directory-Content.html#Scanning-Directory-Content">Scanning Directory Content</a>.

     <!-- versionsort64 -->
     <br><dt><code>int versionsort64 (const void *</code><var>a</var><code>, const void *</code><var>b</var><code>)</code><dd>
<samp><span class="file">dirent.h</span></samp> (GNU):  <a href="Scanning-Directory-Content.html#Scanning-Directory-Content">Scanning Directory Content</a>.

     <!-- vfork -->
     <br><dt><code>pid_t vfork (void)</code><dd>
<samp><span class="file">unistd.h</span></samp> (BSD):  <a href="Creating-a-Process.html#Creating-a-Process">Creating a Process</a>.

     <!-- vfprintf -->
     <br><dt><code>int vfprintf (FILE *</code><var>stream</var><code>, const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- vfscanf -->
     <br><dt><code>int vfscanf (FILE *</code><var>stream</var><code>, const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Variable-Arguments-Input.html#Variable-Arguments-Input">Variable Arguments Input</a>.

     <!-- vfwprintf -->
     <br><dt><code>int vfwprintf (FILE *</code><var>stream</var><code>, const wchar_t *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- vfwscanf -->
     <br><dt><code>int vfwscanf (FILE *</code><var>stream</var><code>, const wchar_t *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Variable-Arguments-Input.html#Variable-Arguments-Input">Variable Arguments Input</a>.

     <!-- VINTR -->
     <br><dt><code>int VINTR</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Signal-Characters.html#Signal-Characters">Signal Characters</a>.

     <!-- VKILL -->
     <br><dt><code>int VKILL</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Editing-Characters.html#Editing-Characters">Editing Characters</a>.

     <!-- vlimit -->
     <br><dt><code>int vlimit (int </code><var>resource</var><code>, int </code><var>limit</var><code>)</code><dd>
<samp><span class="file">sys/vlimit.h</span></samp> (BSD):  <a href="Limits-on-Resources.html#Limits-on-Resources">Limits on Resources</a>.

     <!-- VLNEXT -->
     <br><dt><code>int VLNEXT</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Other-Special.html#Other-Special">Other Special</a>.

     <!-- VMIN -->
     <br><dt><code>int VMIN</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Noncanonical-Input.html#Noncanonical-Input">Noncanonical Input</a>.

     <!-- (void) -->
     <br><dt><code>void (*) error_print_progname  (void)</code><dd>
<samp><span class="file">error.h</span></samp> (GNU):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- vprintf -->
     <br><dt><code>int vprintf (const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- VQUIT -->
     <br><dt><code>int VQUIT</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Signal-Characters.html#Signal-Characters">Signal Characters</a>.

     <!-- VREPRINT -->
     <br><dt><code>int VREPRINT</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Editing-Characters.html#Editing-Characters">Editing Characters</a>.

     <!-- vscanf -->
     <br><dt><code>int vscanf (const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Variable-Arguments-Input.html#Variable-Arguments-Input">Variable Arguments Input</a>.

     <!-- vsnprintf -->
     <br><dt><code>int vsnprintf (char *</code><var>s</var><code>, size_t </code><var>size</var><code>, const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (GNU):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- vsprintf -->
     <br><dt><code>int vsprintf (char *</code><var>s</var><code>, const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- vsscanf -->
     <br><dt><code>int vsscanf (const char *</code><var>s</var><code>, const char *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">stdio.h</span></samp> (ISO):  <a href="Variable-Arguments-Input.html#Variable-Arguments-Input">Variable Arguments Input</a>.

     <!-- VSTART -->
     <br><dt><code>int VSTART</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Start_002fStop-Characters.html#Start_002fStop-Characters">Start/Stop Characters</a>.

     <!-- VSTATUS -->
     <br><dt><code>int VSTATUS</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Other-Special.html#Other-Special">Other Special</a>.

     <!-- VSTOP -->
     <br><dt><code>int VSTOP</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Start_002fStop-Characters.html#Start_002fStop-Characters">Start/Stop Characters</a>.

     <!-- VSUSP -->
     <br><dt><code>int VSUSP</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Signal-Characters.html#Signal-Characters">Signal Characters</a>.

     <!-- vswprintf -->
     <br><dt><code>int vswprintf (wchar_t *</code><var>s</var><code>, size_t </code><var>size</var><code>, const wchar_t *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- vswscanf -->
     <br><dt><code>int vswscanf (const wchar_t *</code><var>s</var><code>, const wchar_t *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Variable-Arguments-Input.html#Variable-Arguments-Input">Variable Arguments Input</a>.

     <!-- vsyslog -->
     <br><dt><code>void vsyslog (int </code><var>facility_priority</var><code>, char *</code><var>format</var><code>, va_list arglist)</code><dd>
<samp><span class="file">syslog.h</span></samp> (BSD):  <a href="syslog_003b-vsyslog.html#syslog_003b-vsyslog">syslog; vsyslog</a>.

     <!-- VTIME -->
     <br><dt><code>int VTIME</code><dd>
<samp><span class="file">termios.h</span></samp> (POSIX.1):  <a href="Noncanonical-Input.html#Noncanonical-Input">Noncanonical Input</a>.

     <!-- vtimes -->
     <br><dt><code>int vtimes (struct vtimes </code><var>current</var><code>, struct vtimes </code><var>child</var><code>)</code><dd>
<samp><span class="file">vtimes.h</span></samp> (vtimes.h):  <a href="Resource-Usage.html#Resource-Usage">Resource Usage</a>.

     <!-- vwarn -->
     <br><dt><code>void vwarn (const char *</code><var>format</var><code>, va_list)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- vwarnx -->
     <br><dt><code>void vwarnx (const char *</code><var>format</var><code>, va_list)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- VWERASE -->
     <br><dt><code>int VWERASE</code><dd>
<samp><span class="file">termios.h</span></samp> (BSD):  <a href="Editing-Characters.html#Editing-Characters">Editing Characters</a>.

     <!-- vwprintf -->
     <br><dt><code>int vwprintf (const wchar_t *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Variable-Arguments-Output.html#Variable-Arguments-Output">Variable Arguments Output</a>.

     <!-- vwscanf -->
     <br><dt><code>int vwscanf (const wchar_t *</code><var>template</var><code>, va_list </code><var>ap</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Variable-Arguments-Input.html#Variable-Arguments-Input">Variable Arguments Input</a>.

     <!-- wait -->
     <br><dt><code>pid_t wait (int *</code><var>status-ptr</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion.html#Process-Completion">Process Completion</a>.

     <!-- wait3 -->
     <br><dt><code>pid_t wait3 (union wait *</code><var>status-ptr</var><code>, int </code><var>options</var><code>, struct rusage *</code><var>usage</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (BSD):  <a href="BSD-Wait-Functions.html#BSD-Wait-Functions">BSD Wait Functions</a>.

     <!-- wait4 -->
     <br><dt><code>pid_t wait4 (pid_t </code><var>pid</var><code>, int *</code><var>status-ptr</var><code>, int </code><var>options</var><code>, struct rusage *</code><var>usage</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (BSD):  <a href="Process-Completion.html#Process-Completion">Process Completion</a>.

     <!-- waitpid -->
     <br><dt><code>pid_t waitpid (pid_t </code><var>pid</var><code>, int *</code><var>status-ptr</var><code>, int </code><var>options</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion.html#Process-Completion">Process Completion</a>.

     <!-- warn -->
     <br><dt><code>void warn (const char *</code><var>format</var><code>, ...)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- warnx -->
     <br><dt><code>void warnx (const char *</code><var>format</var><code>, ...)</code><dd>
<samp><span class="file">err.h</span></samp> (BSD):  <a href="Error-Messages.html#Error-Messages">Error Messages</a>.

     <!-- WCHAR_MAX -->
     <br><dt><code>WCHAR_MAX</code><dd>
<samp><span class="file">limits.h</span></samp> (GNU):  <a href="Range-of-Type.html#Range-of-Type">Range of Type</a>.

     <!-- WCHAR_MAX -->
     <br><dt><code>wint_t WCHAR_MAX</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Extended-Char-Intro.html#Extended-Char-Intro">Extended Char Intro</a>.

     <!-- WCHAR_MIN -->
     <br><dt><code>wint_t WCHAR_MIN</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Extended-Char-Intro.html#Extended-Char-Intro">Extended Char Intro</a>.

     <!-- wchar_t -->
     <br><dt><code>wchar_t</code><dd>
<samp><span class="file">stddef.h</span></samp> (ISO):  <a href="Extended-Char-Intro.html#Extended-Char-Intro">Extended Char Intro</a>.

     <!-- WCOREDUMP -->
     <br><dt><code>int WCOREDUMP (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (BSD):  <a href="Process-Completion-Status.html#Process-Completion-Status">Process Completion Status</a>.

     <!-- wcpcpy -->
     <br><dt><code>wchar_t * wcpcpy (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wcpncpy -->
     <br><dt><code>wchar_t * wcpncpy (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wcrtomb -->
     <br><dt><code>size_t wcrtomb (char *restrict </code><var>s</var><code>, wchar_t </code><var>wc</var><code>, mbstate_t *restrict </code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Converting-a-Character.html#Converting-a-Character">Converting a Character</a>.

     <!-- wcscasecmp -->
     <br><dt><code>int wcscasecmp (const wchar_t *</code><var>ws1</var><code>, const wchar_T *</code><var>ws2</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- wcscat -->
     <br><dt><code>wchar_t * wcscat (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wcschr -->
     <br><dt><code>wchar_t * wcschr (const wchar_t *</code><var>wstring</var><code>, int </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcschrnul -->
     <br><dt><code>wchar_t * wcschrnul (const wchar_t *</code><var>wstring</var><code>, wchar_t </code><var>wc</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcscmp -->
     <br><dt><code>int wcscmp (const wchar_t *</code><var>ws1</var><code>, const wchar_t *</code><var>ws2</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- wcscoll -->
     <br><dt><code>int wcscoll (const wchar_t *</code><var>ws1</var><code>, const wchar_t *</code><var>ws2</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Collation-Functions.html#Collation-Functions">Collation Functions</a>.

     <!-- wcscpy -->
     <br><dt><code>wchar_t * wcscpy (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wcscspn -->
     <br><dt><code>size_t wcscspn (const wchar_t *</code><var>wstring</var><code>, const wchar_t *</code><var>stopset</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcsdup -->
     <br><dt><code>wchar_t * wcsdup (const wchar_t *</code><var>ws</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wcsftime -->
     <br><dt><code>size_t wcsftime (wchar_t *</code><var>s</var><code>, size_t </code><var>size</var><code>, const wchar_t *</code><var>template</var><code>, const struct tm *</code><var>brokentime</var><code>)</code><dd>
<samp><span class="file">time.h</span></samp> (ISO/Amend1):  <a href="Formatting-Calendar-Time.html#Formatting-Calendar-Time">Formatting Calendar Time</a>.

     <!-- wcslen -->
     <br><dt><code>size_t wcslen (const wchar_t *</code><var>ws</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="String-Length.html#String-Length">String Length</a>.

     <!-- wcsncasecmp -->
     <br><dt><code>int wcsncasecmp (const wchar_t *</code><var>ws1</var><code>, const wchar_t *</code><var>s2</var><code>, size_t </code><var>n</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- wcsncat -->
     <br><dt><code>wchar_t * wcsncat (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wcsncmp -->
     <br><dt><code>int wcsncmp (const wchar_t *</code><var>ws1</var><code>, const wchar_t *</code><var>ws2</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- wcsncpy -->
     <br><dt><code>wchar_t * wcsncpy (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wcsnlen -->
     <br><dt><code>size_t wcsnlen (const wchar_t *</code><var>ws</var><code>, size_t </code><var>maxlen</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="String-Length.html#String-Length">String Length</a>.

     <!-- wcsnrtombs -->
     <br><dt><code>size_t wcsnrtombs (char *restrict </code><var>dst</var><code>, const wchar_t **restrict </code><var>src</var><code>, size_t </code><var>nwc</var><code>, size_t </code><var>len</var><code>, mbstate_t *restrict </code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Converting-Strings.html#Converting-Strings">Converting Strings</a>.

     <!-- wcspbrk -->
     <br><dt><code>wchar_t * wcspbrk (const wchar_t *</code><var>wstring</var><code>, const wchar_t *</code><var>stopset</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcsrchr -->
     <br><dt><code>wchar_t * wcsrchr (const wchar_t *</code><var>wstring</var><code>, wchar_t </code><var>c</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcsrtombs -->
     <br><dt><code>size_t wcsrtombs (char *restrict </code><var>dst</var><code>, const wchar_t **restrict </code><var>src</var><code>, size_t </code><var>len</var><code>, mbstate_t *restrict </code><var>ps</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Converting-Strings.html#Converting-Strings">Converting Strings</a>.

     <!-- wcsspn -->
     <br><dt><code>size_t wcsspn (const wchar_t *</code><var>wstring</var><code>, const wchar_t *</code><var>skipset</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcsstr -->
     <br><dt><code>wchar_t * wcsstr (const wchar_t *</code><var>haystack</var><code>, const wchar_t *</code><var>needle</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcstod -->
     <br><dt><code>double wcstod (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Parsing-of-Floats.html#Parsing-of-Floats">Parsing of Floats</a>.

     <!-- wcstof -->
     <br><dt><code>float wcstof (const wchar_t *</code><var>string</var><code>, wchar_t **</code><var>tailptr</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Floats.html#Parsing-of-Floats">Parsing of Floats</a>.

     <!-- wcstoimax -->
     <br><dt><code>intmax_t wcstoimax (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcstok -->
     <br><dt><code>wchar_t * wcstok (wchar_t *</code><var>newstring</var><code>, const char *</code><var>delimiters</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Finding-Tokens-in-a-String.html#Finding-Tokens-in-a-String">Finding Tokens in a String</a>.

     <!-- wcstol -->
     <br><dt><code>long int wcstol (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcstold -->
     <br><dt><code>long double wcstold (const wchar_t *</code><var>string</var><code>, wchar_t **</code><var>tailptr</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Parsing-of-Floats.html#Parsing-of-Floats">Parsing of Floats</a>.

     <!-- wcstoll -->
     <br><dt><code>long long int wcstoll (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcstombs -->
     <br><dt><code>size_t wcstombs (char *</code><var>string</var><code>, const wchar_t *</code><var>wstring</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Non_002dreentrant-String-Conversion.html#Non_002dreentrant-String-Conversion">Non-reentrant String Conversion</a>.

     <!-- wcstoq -->
     <br><dt><code>long long int wcstoq (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcstoul -->
     <br><dt><code>unsigned long int wcstoul (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcstoull -->
     <br><dt><code>unsigned long long int wcstoull (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcstoumax -->
     <br><dt><code>uintmax_t wcstoumax (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcstouq -->
     <br><dt><code>unsigned long long int wcstouq (const wchar_t *restrict </code><var>string</var><code>, wchar_t **restrict </code><var>tailptr</var><code>, int </code><var>base</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Parsing-of-Integers.html#Parsing-of-Integers">Parsing of Integers</a>.

     <!-- wcswcs -->
     <br><dt><code>wchar_t * wcswcs (const wchar_t *</code><var>haystack</var><code>, const wchar_t *</code><var>needle</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (XPG):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wcsxfrm -->
     <br><dt><code>size_t wcsxfrm (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *</code><var>wfrom</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Collation-Functions.html#Collation-Functions">Collation Functions</a>.

     <!-- wctob -->
     <br><dt><code>int wctob (wint_t </code><var>c</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Converting-a-Character.html#Converting-a-Character">Converting a Character</a>.

     <!-- wctomb -->
     <br><dt><code>int wctomb (char *</code><var>string</var><code>, wchar_t </code><var>wchar</var><code>)</code><dd>
<samp><span class="file">stdlib.h</span></samp> (ISO):  <a href="Non_002dreentrant-Character-Conversion.html#Non_002dreentrant-Character-Conversion">Non-reentrant Character Conversion</a>.

     <!-- wctrans -->
     <br><dt><code>wctrans_t wctrans (const char *</code><var>property</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Wide-Character-Case-Conversion.html#Wide-Character-Case-Conversion">Wide Character Case Conversion</a>.

     <!-- wctrans_t -->
     <br><dt><code>wctrans_t</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Wide-Character-Case-Conversion.html#Wide-Character-Case-Conversion">Wide Character Case Conversion</a>.

     <!-- wctype -->
     <br><dt><code>wctype_t wctype (const char *</code><var>property</var><code>)</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- wctype_t -->
     <br><dt><code>wctype_t</code><dd>
<samp><span class="file">wctype.h</span></samp> (ISO):  <a href="Classification-of-Wide-Characters.html#Classification-of-Wide-Characters">Classification of Wide Characters</a>.

     <!-- WEOF -->
     <br><dt><code>int WEOF</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="EOF-and-Errors.html#EOF-and-Errors">EOF and Errors</a>.

     <!-- WEOF -->
     <br><dt><code>wint_t WEOF</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Extended-Char-Intro.html#Extended-Char-Intro">Extended Char Intro</a>.

     <!-- WEXITSTATUS -->
     <br><dt><code>int WEXITSTATUS (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion-Status.html#Process-Completion-Status">Process Completion Status</a>.

     <!-- WIFEXITED -->
     <br><dt><code>int WIFEXITED (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion-Status.html#Process-Completion-Status">Process Completion Status</a>.

     <!-- WIFSIGNALED -->
     <br><dt><code>int WIFSIGNALED (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion-Status.html#Process-Completion-Status">Process Completion Status</a>.

     <!-- WIFSTOPPED -->
     <br><dt><code>int WIFSTOPPED (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion-Status.html#Process-Completion-Status">Process Completion Status</a>.

     <!-- wint_t -->
     <br><dt><code>wint_t</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Extended-Char-Intro.html#Extended-Char-Intro">Extended Char Intro</a>.

     <!-- wmemchr -->
     <br><dt><code>wchar_t * wmemchr (const wchar_t *</code><var>block</var><code>, wchar_t </code><var>wc</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Search-Functions.html#Search-Functions">Search Functions</a>.

     <!-- wmemcmp -->
     <br><dt><code>int wmemcmp (const wchar_t *</code><var>a1</var><code>, const wchar_t *</code><var>a2</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wcjar.h</span></samp> (ISO):  <a href="String_002fArray-Comparison.html#String_002fArray-Comparison">String/Array Comparison</a>.

     <!-- wmemcpy -->
     <br><dt><code>wchar_t * wmemcpy (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wmemmove -->
     <br><dt><code>wchar_t * wmemmove (wchar *</code><var>wto</var><code>, const wchar_t *</code><var>wfrom</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wmempcpy -->
     <br><dt><code>wchar_t * wmempcpy (wchar_t *restrict </code><var>wto</var><code>, const wchar_t *restrict </code><var>wfrom</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (GNU):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- wmemset -->
     <br><dt><code>wchar_t * wmemset (wchar_t *</code><var>block</var><code>, wchar_t </code><var>wc</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Copying-and-Concatenation.html#Copying-and-Concatenation">Copying and Concatenation</a>.

     <!-- W_OK -->
     <br><dt><code>int W_OK</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Testing-File-Access.html#Testing-File-Access">Testing File Access</a>.

     <!-- wordexp -->
     <br><dt><code>int wordexp (const char *</code><var>words</var><code>, wordexp_t *</code><var>word-vector-ptr</var><code>, int </code><var>flags</var><code>)</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- wordexp_t -->
     <br><dt><code>wordexp_t</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- wordfree -->
     <br><dt><code>void wordfree (wordexp_t *</code><var>word-vector-ptr</var><code>)</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- wprintf -->
     <br><dt><code>int wprintf (const wchar_t *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Formatted-Output-Functions.html#Formatted-Output-Functions">Formatted Output Functions</a>.

     <!-- WRDE_APPEND -->
     <br><dt><code>WRDE_APPEND</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Flags-for-Wordexp.html#Flags-for-Wordexp">Flags for Wordexp</a>.

     <!-- WRDE_BADCHAR -->
     <br><dt><code>WRDE_BADCHAR</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- WRDE_BADVAL -->
     <br><dt><code>WRDE_BADVAL</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- WRDE_CMDSUB -->
     <br><dt><code>WRDE_CMDSUB</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- WRDE_DOOFFS -->
     <br><dt><code>WRDE_DOOFFS</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Flags-for-Wordexp.html#Flags-for-Wordexp">Flags for Wordexp</a>.

     <!-- WRDE_NOCMD -->
     <br><dt><code>WRDE_NOCMD</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Flags-for-Wordexp.html#Flags-for-Wordexp">Flags for Wordexp</a>.

     <!-- WRDE_NOSPACE -->
     <br><dt><code>WRDE_NOSPACE</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- WRDE_REUSE -->
     <br><dt><code>WRDE_REUSE</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Flags-for-Wordexp.html#Flags-for-Wordexp">Flags for Wordexp</a>.

     <!-- WRDE_SHOWERR -->
     <br><dt><code>WRDE_SHOWERR</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Flags-for-Wordexp.html#Flags-for-Wordexp">Flags for Wordexp</a>.

     <!-- WRDE_SYNTAX -->
     <br><dt><code>WRDE_SYNTAX</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Calling-Wordexp.html#Calling-Wordexp">Calling Wordexp</a>.

     <!-- WRDE_UNDEF -->
     <br><dt><code>WRDE_UNDEF</code><dd>
<samp><span class="file">wordexp.h</span></samp> (POSIX.2):  <a href="Flags-for-Wordexp.html#Flags-for-Wordexp">Flags for Wordexp</a>.

     <!-- write -->
     <br><dt><code>ssize_t write (int </code><var>filedes</var><code>, const void *</code><var>buffer</var><code>, size_t </code><var>size</var><code>)</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="I_002fO-Primitives.html#I_002fO-Primitives">I/O Primitives</a>.

     <!-- writev -->
     <br><dt><code>ssize_t writev (int </code><var>filedes</var><code>, const struct iovec *</code><var>vector</var><code>, int </code><var>count</var><code>)</code><dd>
<samp><span class="file">sys/uio.h</span></samp> (BSD):  <a href="Scatter_002dGather.html#Scatter_002dGather">Scatter-Gather</a>.

     <!-- wscanf -->
     <br><dt><code>int wscanf (const wchar_t *</code><var>template</var><code>, ...)</code><dd>
<samp><span class="file">wchar.h</span></samp> (ISO):  <a href="Formatted-Input-Functions.html#Formatted-Input-Functions">Formatted Input Functions</a>.

     <!-- WSTOPSIG -->
     <br><dt><code>int WSTOPSIG (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion-Status.html#Process-Completion-Status">Process Completion Status</a>.

     <!-- WTERMSIG -->
     <br><dt><code>int WTERMSIG (int </code><var>status</var><code>)</code><dd>
<samp><span class="file">sys/wait.h</span></samp> (POSIX.1):  <a href="Process-Completion-Status.html#Process-Completion-Status">Process Completion Status</a>.

     <!-- X_OK -->
     <br><dt><code>int X_OK</code><dd>
<samp><span class="file">unistd.h</span></samp> (POSIX.1):  <a href="Testing-File-Access.html#Testing-File-Access">Testing File Access</a>.

     <!-- _XOPEN_SOURCE -->
     <br><dt><code>_XOPEN_SOURCE</code><dd>
(X/Open):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- _XOPEN_SOURCE_EXTENDED -->
     <br><dt><code>_XOPEN_SOURCE_EXTENDED</code><dd>
(X/Open):  <a href="Feature-Test-Macros.html#Feature-Test-Macros">Feature Test Macros</a>.

     <!-- y0 -->
     <br><dt><code>double y0 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- y0f -->
     <br><dt><code>float y0f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- y0l -->
     <br><dt><code>long double y0l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- y1 -->
     <br><dt><code>double y1 (double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- y1f -->
     <br><dt><code>float y1f (float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- y1l -->
     <br><dt><code>long double y1l (long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- yn -->
     <br><dt><code>double yn (int n, double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- ynf -->
     <br><dt><code>float ynf (int n, float </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

     <!-- ynl -->
     <br><dt><code>long double ynl (int n, long double </code><var>x</var><code>)</code><dd>
<samp><span class="file">math.h</span></samp> (SVID):  <a href="Special-Functions.html#Special-Functions">Special Functions</a>.

   </dl>

<!-- This is for making the `INSTALL' file for the distribution. -->
<!-- Makeinfo ignores it when processing the file from the include. -->
   </body></html>

