\entry{library}{1}{library}
\entry{standards}{1}{standards}
\entry{ISO C}{2}{ISO C}
\entry{POSIX}{2}{POSIX}
\entry{POSIX.1}{2}{POSIX.1}
\entry{IEEE Std 1003.1}{2}{IEEE Std 1003.1}
\entry{POSIX.2}{2}{POSIX.2}
\entry{IEEE Std 1003.2}{2}{IEEE Std 1003.2}
\entry{BSD Unix}{3}{BSD Unix}
\entry{4.n BSD Unix}{3}{4.\var {n} BSD Unix}
\entry{Berkeley Unix}{3}{Berkeley Unix}
\entry{SunOS}{3}{SunOS}
\entry{Unix, Berkeley}{3}{Unix, Berkeley}
\entry{SVID}{3}{SVID}
\entry{System V Unix}{3}{System V Unix}
\entry{Unix, System V}{3}{Unix, System V}
\entry{header files}{4}{header files}
\entry{definition (compared to declaration)}{4}{definition (compared to declaration)}
\entry{declaration (compared to definition)}{4}{declaration (compared to definition)}
\entry{shadowing functions with macros}{5}{shadowing functions with macros}
\entry{removing macros that shadow functions}{5}{removing macros that shadow functions}
\entry{undefining macros that shadow functions}{5}{undefining macros that shadow functions}
\entry{reserved names}{6}{reserved names}
\entry{name space}{6}{name space}
\entry{feature test macros}{8}{feature test macros}
\entry{BSD compatibility library.}{9}{BSD compatibility library.}
\entry{error reporting}{15}{error reporting}
\entry{reporting errors}{15}{reporting errors}
\entry{error codes}{15}{error codes}
\entry{status codes}{15}{status codes}
\entry{program name}{29}{program name}
\entry{name of running program}{29}{name of running program}
\entry{memory allocation}{31}{memory allocation}
\entry{storage allocation}{31}{storage allocation}
\entry{dynamic allocation}{31}{dynamic allocation}
\entry{static allocation}{31}{static allocation}
\entry{automatic allocation}{31}{automatic allocation}
\entry{unconstrained storage allocation}{32}{unconstrained storage allocation}
\entry{malloc function}{32}{\code {malloc} function}
\entry{heap, dynamic allocation from}{32}{heap, dynamic allocation from}
\entry{allocation of memory with malloc}{32}{allocation of memory with \code {malloc}}
\entry{freeing memory allocated with malloc}{34}{freeing memory allocated with \code {malloc}}
\entry{heap, freeing memory from}{34}{heap, freeing memory from}
\entry{changing the size of a block (malloc)}{35}{changing the size of a block (\code {malloc})}
\entry{efficiency and malloc}{37}{efficiency and \code {malloc}}
\entry{page boundary}{37}{page boundary}
\entry{alignment (with malloc)}{37}{alignment (with \code {malloc})}
\entry{heap consistency checking}{38}{heap consistency checking}
\entry{consistency checking, of heap}{38}{consistency checking, of heap}
\entry{allocation hooks, for malloc}{39}{allocation hooks, for \code {malloc}}
\entry{allocation statistics}{41}{allocation statistics}
\entry{obstacks}{43}{obstacks}
\entry{allocation (obstacks)}{45}{allocation (obstacks)}
\entry{freeing (obstacks)}{46}{freeing (obstacks)}
\entry{macros}{47}{macros}
\entry{growing objects (in obstacks)}{47}{growing objects (in obstacks)}
\entry{changing the size of a block (obstacks)}{47}{changing the size of a block (obstacks)}
\entry{shrinking objects}{49}{shrinking objects}
\entry{efficiency and obstacks}{49}{efficiency and obstacks}
\entry{obstack status}{51}{obstack status}
\entry{status of obstack}{51}{status of obstack}
\entry{alignment (in obstacks)}{52}{alignment (in obstacks)}
\entry{efficiency of chunks}{52}{efficiency of chunks}
\entry{chunks}{52}{chunks}
\entry{automatic freeing}{55}{automatic freeing}
\entry{alloca function}{55}{\code {alloca} function}
\entry{automatic storage with variable size}{55}{automatic storage with variable size}
\entry{longjmp}{56}{longjmp}
\entry{alloca disadvantages}{57}{\code {alloca} disadvantages}
\entry{disadvantages of alloca}{57}{disadvantages of \code {alloca}}
\entry{variable-sized arrays}{57}{variable-sized arrays}
\entry{relocating memory allocator}{57}{relocating memory allocator}
\entry{handle}{58}{handle}
\entry{character testing}{61}{character testing}
\entry{classification of characters}{61}{classification of characters}
\entry{predicates on characters}{61}{predicates on characters}
\entry{character predicates}{61}{character predicates}
\entry{lower-case character}{61}{lower-case character}
\entry{upper-case character}{61}{upper-case character}
\entry{alphabetic character}{61}{alphabetic character}
\entry{digit character}{62}{digit character}
\entry{decimal digit character}{62}{decimal digit character}
\entry{alphanumeric character}{62}{alphanumeric character}
\entry{hexadecimal digit character}{62}{hexadecimal digit character}
\entry{punctuation character}{62}{punctuation character}
\entry{whitespace character}{62}{whitespace character}
\entry{blank character}{62}{blank character}
\entry{graphic character}{62}{graphic character}
\entry{printing character}{62}{printing character}
\entry{control character}{63}{control character}
\entry{ASCII character}{63}{ASCII character}
\entry{character case conversion}{63}{character case conversion}
\entry{case conversion of characters}{63}{case conversion of characters}
\entry{converting case of characters}{63}{converting case of characters}
\entry{string, representation of}{65}{string, representation of}
\entry{string}{65}{string}
\entry{null character}{65}{null character}
\entry{string literal}{65}{string literal}
\entry{length of string}{66}{length of string}
\entry{allocation size of string}{66}{allocation size of string}
\entry{size of string}{66}{size of string}
\entry{string length}{66}{string length}
\entry{string allocation}{66}{string allocation}
\entry{copying strings and arrays}{67}{copying strings and arrays}
\entry{string copy functions}{67}{string copy functions}
\entry{array copy functions}{67}{array copy functions}
\entry{concatenating strings}{67}{concatenating strings}
\entry{string concatenation functions}{67}{string concatenation functions}
\entry{comparing strings and arrays}{72}{comparing strings and arrays}
\entry{string comparison functions}{72}{string comparison functions}
\entry{array comparison functions}{72}{array comparison functions}
\entry{predicates on strings}{72}{predicates on strings}
\entry{predicates on arrays}{72}{predicates on arrays}
\entry{collating strings}{75}{collating strings}
\entry{string collation functions}{75}{string collation functions}
\entry{converting string to collation order}{76}{converting string to collation order}
\entry{search functions (for strings)}{78}{search functions (for strings)}
\entry{string search functions}{78}{string search functions}
\entry{tokenizing strings}{80}{tokenizing strings}
\entry{breaking a string into tokens}{80}{breaking a string into tokens}
\entry{parsing tokens from a string}{80}{parsing tokens from a string}
\entry{opening a file}{85}{opening a file}
\entry{file position}{87}{file position}
\entry{sequential-access files}{87}{sequential-access files}
\entry{random-access files}{87}{random-access files}
\entry{append-access files}{87}{append-access files}
\entry{file name}{87}{file name}
\entry{directory}{87}{directory}
\entry{link}{87}{link}
\entry{directory entry}{87}{directory entry}
\entry{file name component}{87}{file name component}
\entry{file name resolution}{88}{file name resolution}
\entry{root directory}{88}{root directory}
\entry{absolute file name}{88}{absolute file name}
\entry{relative file name}{88}{relative file name}
\entry{parent directory}{88}{parent directory}
\entry{file name errors}{89}{file name errors}
\entry{usual file name errors}{89}{usual file name errors}
\entry{file pointer}{91}{file pointer}
\entry{standard streams}{91}{standard streams}
\entry{streams, standard}{91}{streams, standard}
\entry{standard input stream}{91}{standard input stream}
\entry{standard output stream}{92}{standard output stream}
\entry{standard error stream}{92}{standard error stream}
\entry{opening a stream}{92}{opening a stream}
\entry{closing a stream}{94}{closing a stream}
\entry{writing to a stream, by characters}{95}{writing to a stream, by characters}
\entry{reading from a stream, by characters}{96}{reading from a stream, by characters}
\entry{peeking at input}{100}{peeking at input}
\entry{unreading characters}{100}{unreading characters}
\entry{pushing input back}{100}{pushing input back}
\entry{binary I/O to a stream}{101}{binary I/O to a stream}
\entry{block I/O to a stream}{101}{block I/O to a stream}
\entry{reading from a stream, by blocks}{101}{reading from a stream, by blocks}
\entry{writing to a stream, by blocks}{101}{writing to a stream, by blocks}
\entry{format string, for printf}{102}{format string, for \code {printf}}
\entry{template, for printf}{102}{template, for \code {printf}}
\entry{formatted output to a stream}{102}{formatted output to a stream}
\entry{writing to a stream, formatted}{102}{writing to a stream, formatted}
\entry{conversion specifications (printf)}{103}{conversion specifications (\code {printf})}
\entry{flag character (printf)}{104}{flag character (\code {printf})}
\entry{minimum field width (printf)}{104}{minimum field width (\code {printf})}
\entry{precision (printf)}{104}{precision (\code {printf})}
\entry{type modifier character (printf)}{104}{type modifier character (\code {printf})}
\entry{output conversions, for printf}{105}{output conversions, for \code {printf}}
\entry{parsing a template string}{115}{parsing a template string}
\entry{customizing printf}{118}{customizing \code {printf}}
\entry{defining new printf conversions}{118}{defining new \code {printf} conversions}
\entry{extending printf}{118}{extending \code {printf}}
\entry{formatted input from a stream}{124}{formatted input from a stream}
\entry{reading from a stream, formatted}{124}{reading from a stream, formatted}
\entry{format string, for scanf}{124}{format string, for \code {scanf}}
\entry{template, for scanf}{124}{template, for \code {scanf}}
\entry{conversion specifications (scanf)}{124}{conversion specifications (\code {scanf})}
\entry{matching failure, in scanf}{124}{matching failure, in \code {scanf}}
\entry{flag character (scanf)}{125}{flag character (\code {scanf})}
\entry{maximum field width (scanf)}{126}{maximum field width (\code {scanf})}
\entry{type modifier character (scanf)}{126}{type modifier character (\code {scanf})}
\entry{input conversions, for scanf}{126}{input conversions, for \code {scanf}}
\entry{end of file, on a stream}{133}{end of file, on a stream}
\entry{text stream}{134}{text stream}
\entry{binary stream}{134}{binary stream}
\entry{lines (in a text file)}{134}{lines (in a text file)}
\entry{file positioning on a stream}{134}{file positioning on a stream}
\entry{positioning a stream}{134}{positioning a stream}
\entry{seeking on a stream}{134}{seeking on a stream}
\entry{buffering of streams}{137}{buffering of streams}
\entry{unbuffered stream}{138}{unbuffered stream}
\entry{line buffered stream}{138}{line buffered stream}
\entry{fully buffered stream}{138}{fully buffered stream}
\entry{flushing a stream}{138}{flushing a stream}
\entry{buffering, controlling}{139}{buffering, controlling}
\entry{stream, for I/O to a string}{141}{stream, for I/O to a string}
\entry{string stream}{141}{string stream}
\entry{custom streams}{144}{custom streams}
\entry{programming your own streams}{144}{programming your own streams}
\entry{cookie, for custom stream}{144}{cookie, for custom stream}
\entry{hook functions (of custom streams)}{146}{hook functions (of custom streams)}
\entry{opening a file descriptor}{147}{opening a file descriptor}
\entry{closing a file descriptor}{147}{closing a file descriptor}
\entry{reading from a file descriptor}{149}{reading from a file descriptor}
\entry{end-of-file, on a file descriptor}{149}{end-of-file, on a file descriptor}
\entry{writing to a file descriptor}{151}{writing to a file descriptor}
\entry{file positioning on a file descriptor}{152}{file positioning on a file descriptor}
\entry{positioning a file descriptor}{152}{positioning a file descriptor}
\entry{seeking on a file descriptor}{152}{seeking on a file descriptor}
\entry{sparse files}{153}{sparse files}
\entry{holes in files}{153}{holes in files}
\entry{streams, and file descriptors}{155}{streams, and file descriptors}
\entry{converting file descriptor to stream}{155}{converting file descriptor to stream}
\entry{extracting file descriptor from stream}{155}{extracting file descriptor from stream}
\entry{standard file descriptors}{155}{standard file descriptors}
\entry{file descriptors, standard}{155}{file descriptors, standard}
\entry{standard input file descriptor}{155}{standard input file descriptor}
\entry{standard output file descriptor}{155}{standard output file descriptor}
\entry{standard error file descriptor}{155}{standard error file descriptor}
\entry{channels}{156}{channels}
\entry{streams and descriptors}{156}{streams and descriptors}
\entry{descriptors and streams}{156}{descriptors and streams}
\entry{mixing descriptors and streams}{156}{mixing descriptors and streams}
\entry{linked channels}{156}{linked channels}
\entry{cleaning up a stream}{156}{cleaning up a stream}
\entry{independent channels}{156}{independent channels}
\entry{waiting for input or output}{158}{waiting for input or output}
\entry{multiplexing input}{158}{multiplexing input}
\entry{input from multiple files}{158}{input from multiple files}
\entry{file descriptor sets, for select}{158}{file descriptor sets, for \code {select}}
\entry{control operations on files}{161}{control operations on files}
\entry{fcntl function}{161}{\code {fcntl} function}
\entry{duplicating file descriptors}{162}{duplicating file descriptors}
\entry{redirecting input and output}{162}{redirecting input and output}
\entry{file descriptor flags}{164}{file descriptor flags}
\entry{close-on-exec (file descriptor flag)}{165}{close-on-exec (file descriptor flag)}
\entry{file status flags}{165}{file status flags}
\entry{file name translation flags}{167}{file name translation flags}
\entry{flags, file name translation}{167}{flags, file name translation}
\entry{open-time action flags}{167}{open-time action flags}
\entry{flags, open-time action}{167}{flags, open-time action}
\entry{create on open (file status flag)}{167}{create on open (file status flag)}
\entry{non-blocking open}{167}{non-blocking open}
\entry{controlling terminal, setting}{168}{controlling terminal, setting}
\entry{symbolic link, opening}{168}{symbolic link, opening}
\entry{file locks}{171}{file locks}
\entry{record locking}{171}{record locking}
\entry{exclusive lock}{171}{exclusive lock}
\entry{write lock}{171}{write lock}
\entry{shared lock}{172}{shared lock}
\entry{read lock}{172}{read lock}
\entry{interrupt-driven input}{175}{interrupt-driven input}
\entry{current working directory}{177}{current working directory}
\entry{working directory}{177}{working directory}
\entry{change working directory}{177}{change working directory}
\entry{accessing directories}{179}{accessing directories}
\entry{reading from a directory}{179}{reading from a directory}
\entry{directories, accessing}{179}{directories, accessing}
\entry{directory stream}{179}{directory stream}
\entry{hard link}{185}{hard link}
\entry{link, hard}{185}{link, hard}
\entry{multiple names for one file}{185}{multiple names for one file}
\entry{file names, multiple}{185}{file names, multiple}
\entry{soft link}{186}{soft link}
\entry{link, soft}{186}{link, soft}
\entry{symbolic link}{186}{symbolic link}
\entry{link, symbolic}{186}{link, symbolic}
\entry{deleting a file}{188}{deleting a file}
\entry{removing a file}{188}{removing a file}
\entry{unlinking a file}{188}{unlinking a file}
\entry{directories, deleting}{188}{directories, deleting}
\entry{deleting a directory}{188}{deleting a directory}
\entry{renaming a file}{189}{renaming a file}
\entry{creating a directory}{190}{creating a directory}
\entry{directories, creating}{190}{directories, creating}
\entry{status of a file}{191}{status of a file}
\entry{attributes of a file}{191}{attributes of a file}
\entry{file attributes}{191}{file attributes}
\entry{inode number}{193}{inode number}
\entry{file owner}{196}{file owner}
\entry{owner of a file}{196}{owner of a file}
\entry{group owner of a file}{196}{group owner of a file}
\entry{file permission bits}{198}{file permission bits}
\entry{sticky bit}{198}{sticky bit}
\entry{permission to access a file}{200}{permission to access a file}
\entry{access permission for a file}{200}{access permission for a file}
\entry{file access permission}{200}{file access permission}
\entry{file creation mask}{200}{file creation mask}
\entry{umask}{200}{umask}
\entry{testing access permission}{202}{testing access permission}
\entry{access, testing for}{202}{access, testing for}
\entry{setuid programs and file access}{202}{setuid programs and file access}
\entry{file access time}{204}{file access time}
\entry{file modification time}{204}{file modification time}
\entry{file attribute modification time}{204}{file attribute modification time}
\entry{creating special files}{205}{creating special files}
\entry{special files}{205}{special files}
\entry{TMPDIR environment variable}{208}{TMPDIR environment variable}
\entry{pipe}{211}{pipe}
\entry{FIFO special file}{211}{FIFO special file}
\entry{creating a pipe}{211}{creating a pipe}
\entry{opening a pipe}{211}{opening a pipe}
\entry{interprocess communication, with pipes}{211}{interprocess communication, with pipes}
\entry{creating a pipe to a subprocess}{213}{creating a pipe to a subprocess}
\entry{pipe to a subprocess}{213}{pipe to a subprocess}
\entry{filtering i/o through subprocess}{213}{filtering i/o through subprocess}
\entry{creating a FIFO special file}{215}{creating a FIFO special file}
\entry{interprocess communication, with FIFO}{215}{interprocess communication, with FIFO}
\entry{socket}{217}{socket}
\entry{interprocess communication, with sockets}{217}{interprocess communication, with sockets}
\entry{communication style (of a socket)}{217}{communication style (of a socket)}
\entry{style of communication (of a socket)}{217}{style of communication (of a socket)}
\entry{packet}{217}{packet}
\entry{byte stream}{217}{byte stream}
\entry{stream (sockets)}{217}{stream (sockets)}
\entry{loss of data on sockets}{217}{loss of data on sockets}
\entry{data loss on sockets}{217}{data loss on sockets}
\entry{namespace (of socket)}{217}{namespace (of socket)}
\entry{domain (of socket)}{217}{domain (of socket)}
\entry{socket namespace}{217}{socket namespace}
\entry{socket domain}{217}{socket domain}
\entry{network protocol}{218}{network protocol}
\entry{protocol (of socket)}{218}{protocol (of socket)}
\entry{socket protocol}{218}{socket protocol}
\entry{protocol family}{218}{protocol family}
\entry{address of socket}{219}{address of socket}
\entry{name of socket}{219}{name of socket}
\entry{binding a socket address}{219}{binding a socket address}
\entry{socket address (name) binding}{219}{socket address (name) binding}
\entry{file namespace, for sockets}{222}{file namespace, for sockets}
\entry{Internet namespace, for sockets}{225}{Internet namespace, for sockets}
\entry{host address, Internet}{227}{host address, Internet}
\entry{Internet host address}{227}{Internet host address}
\entry{network number}{227}{network number}
\entry{local network address number}{227}{local network address number}
\entry{standard dot notation, for Internet addresses}{227}{standard dot notation, for Internet addresses}
\entry{dot notation, for Internet addresses}{227}{dot notation, for Internet addresses}
\entry{hosts database}{231}{hosts database}
\entry{converting host name to address}{231}{converting host name to address}
\entry{converting host address to name}{231}{converting host address to name}
\entry{port number}{233}{port number}
\entry{services database}{234}{services database}
\entry{converting service name to port number}{234}{converting service name to port number}
\entry{converting port number to service name}{234}{converting port number to service name}
\entry{byte order conversion, for socket}{235}{byte order conversion, for socket}
\entry{converting byte order}{235}{converting byte order}
\entry{big-endian}{235}{big-endian}
\entry{little-endian}{235}{little-endian}
\entry{network byte order}{235}{network byte order}
\entry{protocols database}{236}{protocols database}
\entry{TCP (Internet protocol)}{236}{TCP (Internet protocol)}
\entry{creating a socket}{240}{creating a socket}
\entry{socket, creating}{240}{socket, creating}
\entry{opening a socket}{240}{opening a socket}
\entry{socket, closing}{240}{socket, closing}
\entry{closing a socket}{240}{closing a socket}
\entry{shutting down a socket}{240}{shutting down a socket}
\entry{socket shutdown}{240}{socket shutdown}
\entry{creating a socket pair}{241}{creating a socket pair}
\entry{socket pair}{241}{socket pair}
\entry{opening a socket pair}{241}{opening a socket pair}
\entry{connection}{242}{connection}
\entry{client}{242}{client}
\entry{server}{242}{server}
\entry{connecting a socket}{242}{connecting a socket}
\entry{socket, connecting}{242}{socket, connecting}
\entry{socket, initiating a connection}{242}{socket, initiating a connection}
\entry{socket, client actions}{242}{socket, client actions}
\entry{listening (sockets)}{243}{listening (sockets)}
\entry{sockets, server actions}{243}{sockets, server actions}
\entry{sockets, listening}{243}{sockets, listening}
\entry{sockets, accepting connections}{244}{sockets, accepting connections}
\entry{accepting connections}{244}{accepting connections}
\entry{reading from a socket}{246}{reading from a socket}
\entry{writing to a socket}{246}{writing to a socket}
\entry{out-of-band data}{252}{out-of-band data}
\entry{high-priority data}{252}{high-priority data}
\entry{urgent socket condition}{252}{urgent socket condition}
\entry{datagram socket}{256}{datagram socket}
\entry{sending a datagram}{256}{sending a datagram}
\entry{transmitting datagrams}{256}{transmitting datagrams}
\entry{datagrams, transmitting}{256}{datagrams, transmitting}
\entry{receiving datagrams}{256}{receiving datagrams}
\entry{socket options}{262}{socket options}
\entry{level, for socket options}{262}{level, for socket options}
\entry{socket option level}{262}{socket option level}
\entry{networks database}{264}{networks database}
\entry{converting network number to network name}{264}{converting network number to network name}
\entry{converting network name to network number}{264}{converting network name to network number}
\entry{terminal identification}{267}{terminal identification}
\entry{identifying terminals}{267}{identifying terminals}
\entry{terminal input queue}{267}{terminal input queue}
\entry{typeahead buffer}{267}{typeahead buffer}
\entry{terminal output queue}{268}{terminal output queue}
\entry{canonical input processing}{268}{canonical input processing}
\entry{noncanonical input processing}{268}{noncanonical input processing}
\entry{terminal mode data types}{269}{terminal mode data types}
\entry{terminal mode functions}{270}{terminal mode functions}
\entry{parity checking}{273}{parity checking}
\entry{break condition, detecting}{273}{break condition, detecting}
\entry{modem status lines}{276}{modem status lines}
\entry{carrier detect}{276}{carrier detect}
\entry{modem disconnect}{276}{modem disconnect}
\entry{echo of terminal input}{278}{echo of terminal input}
\entry{interactive signals, from terminal}{279}{interactive signals, from terminal}
\entry{line speed}{280}{line speed}
\entry{baud rate}{280}{baud rate}
\entry{terminal line speed}{280}{terminal line speed}
\entry{terminal line speed}{280}{terminal line speed}
\entry{EOF character}{283}{EOF character}
\entry{EOL character}{283}{EOL character}
\entry{EOL2 character}{283}{EOL2 character}
\entry{ERASE character}{283}{ERASE character}
\entry{WERASE character}{283}{WERASE character}
\entry{KILL character}{284}{KILL character}
\entry{REPRINT character}{284}{REPRINT character}
\entry{INTR character}{284}{INTR character}
\entry{interrupt character}{284}{interrupt character}
\entry{QUIT character}{285}{QUIT character}
\entry{SUSP character}{285}{SUSP character}
\entry{suspend character}{285}{suspend character}
\entry{DSUSP character}{285}{DSUSP character}
\entry{delayed suspend character}{285}{delayed suspend character}
\entry{START character}{286}{START character}
\entry{STOP character}{286}{STOP character}
\entry{LNEXT character}{286}{LNEXT character}
\entry{DISCARD character}{286}{DISCARD character}
\entry{STATUS character}{287}{STATUS character}
\entry{MIN termios slot}{287}{MIN termios slot}
\entry{TIME termios slot}{287}{TIME termios slot}
\entry{terminal line control functions}{289}{terminal line control functions}
\entry{break condition, generating}{289}{break condition, generating}
\entry{flushing terminal output queue}{289}{flushing terminal output queue}
\entry{terminal output queue, flushing}{289}{terminal output queue, flushing}
\entry{clearing terminal input queue}{290}{clearing terminal input queue}
\entry{terminal input queue, clearing}{290}{terminal input queue, clearing}
\entry{flow control, terminal}{290}{flow control, terminal}
\entry{terminal flow control}{290}{terminal flow control}
\entry{domain error}{293}{domain error}
\entry{range error}{293}{range error}
\entry{trigonometric functions}{294}{trigonometric functions}
\entry{pi (trigonometric constant)}{294}{pi (trigonometric constant)}
\entry{inverse trigonometric functions}{295}{inverse trigonometric functions}
\entry{exponentiation functions}{296}{exponentiation functions}
\entry{power functions}{296}{power functions}
\entry{logarithm functions}{296}{logarithm functions}
\entry{square root function}{296}{square root function}
\entry{cube root function}{296}{cube root function}
\entry{hyperbolic functions}{297}{hyperbolic functions}
\entry{inverse hyperbolic functions}{297}{inverse hyperbolic functions}
\entry{random numbers}{298}{random numbers}
\entry{pseudo-random numbers}{298}{pseudo-random numbers}
\entry{seed (for random numbers)}{298}{seed (for random numbers)}
\entry{NaN}{301}{NaN}
\entry{not a number}{301}{not a number}
\entry{IEEE floating point}{301}{IEEE floating point}
\entry{absolute value functions}{302}{absolute value functions}
\entry{normalization functions (floating-point)}{303}{normalization functions (floating-point)}
\entry{rounding functions}{304}{rounding functions}
\entry{remainder functions}{304}{remainder functions}
\entry{converting floats to integers}{304}{converting floats to integers}
\entry{integer division functions}{305}{integer division functions}
\entry{parsing numbers (in formatted input)}{306}{parsing numbers (in formatted input)}
\entry{converting strings to numbers}{306}{converting strings to numbers}
\entry{number syntax, parsing}{306}{number syntax, parsing}
\entry{syntax, for reading numbers}{306}{syntax, for reading numbers}
\entry{Comparison Function}{313}{Comparison Function}
\entry{search function (for arrays)}{313}{search function (for arrays)}
\entry{binary search function (for arrays)}{313}{binary search function (for arrays)}
\entry{array search function}{313}{array search function}
\entry{sort function (for arrays)}{314}{sort function (for arrays)}
\entry{quick sort function (for arrays)}{314}{quick sort function (for arrays)}
\entry{array sort function}{314}{array sort function}
\entry{stable sorting}{314}{stable sorting}
\entry{Kermit the frog}{317}{Kermit the frog}
\entry{globbing}{320}{globbing}
\entry{word expansion}{329}{word expansion}
\entry{expansion of shell words}{329}{expansion of shell words}
\entry{tilde expansion}{330}{tilde expansion}
\entry{variable substitution}{330}{variable substitution}
\entry{substitution of variables and commands}{330}{substitution of variables and commands}
\entry{command substitution}{330}{command substitution}
\entry{arithmetic expansion}{330}{arithmetic expansion}
\entry{field splitting}{330}{field splitting}
\entry{wildcard expansion}{330}{wildcard expansion}
\entry{quote removal}{330}{quote removal}
\entry{removal of quotes}{330}{removal of quotes}
\entry{CPU time}{335}{CPU time}
\entry{processor time}{335}{processor time}
\entry{clock ticks}{335}{clock ticks}
\entry{ticks, clock}{335}{ticks, clock}
\entry{time, elapsed CPU}{335}{time, elapsed CPU}
\entry{Gregorian calendar}{337}{Gregorian calendar}
\entry{time, calendar}{337}{time, calendar}
\entry{date and time}{337}{date and time}
\entry{calendar time}{337}{calendar time}
\entry{high-resolution time}{337}{high-resolution time}
\entry{local time}{337}{local time}
\entry{broken-down time}{337}{broken-down time}
\entry{epoch}{338}{epoch}
\entry{broken-down time}{341}{broken-down time}
\entry{calendar time and broken-down time}{341}{calendar time and broken-down time}
\entry{leap second}{341}{leap second}
\entry{Daylight Saving Time}{342}{Daylight Saving Time}
\entry{summer time}{342}{summer time}
\entry{time zone}{348}{time zone}
\entry{time zone database}{350}{time zone database}
\entry{setting an alarm}{352}{setting an alarm}
\entry{interval timer, setting}{352}{interval timer, setting}
\entry{alarms, setting}{352}{alarms, setting}
\entry{timers, setting}{352}{timers, setting}
\entry{real-time timer}{352}{real-time timer}
\entry{timer, real-time}{352}{timer, real-time}
\entry{virtual timer}{352}{virtual timer}
\entry{timer, virtual}{352}{timer, virtual}
\entry{profiling timer}{352}{profiling timer}
\entry{timer, profiling}{352}{timer, profiling}
\entry{resource limits}{357}{resource limits}
\entry{limits on resource usage}{357}{limits on resource usage}
\entry{usage limits}{357}{usage limits}
\entry{soft limit}{358}{soft limit}
\entry{hard limit}{358}{hard limit}
\entry{process priority}{359}{process priority}
\entry{priority of a process}{359}{priority of a process}
\entry{extended character sets}{363}{extended character sets}
\entry{wide characters}{363}{wide characters}
\entry{multibyte characters}{364}{multibyte characters}
\entry{basic byte sequence}{364}{basic byte sequence}
\entry{code, character}{367}{code, character}
\entry{character code}{367}{character code}
\entry{extended strings, converting representations}{367}{extended strings, converting representations}
\entry{converting extended strings}{367}{converting extended strings}
\entry{multibyte character, length of}{369}{multibyte character, length of}
\entry{length of multibyte character}{369}{length of multibyte character}
\entry{extended characters, converting}{369}{extended characters, converting}
\entry{converting extended characters}{369}{converting extended characters}
\entry{internationalization}{375}{internationalization}
\entry{locales}{375}{locales}
\entry{combining locales}{376}{combining locales}
\entry{categories for locales}{376}{categories for locales}
\entry{locale categories}{376}{locale categories}
\entry{changing the locale}{377}{changing the locale}
\entry{locale, changing}{377}{locale, changing}
\entry{monetary value formatting}{379}{monetary value formatting}
\entry{numeric value formatting}{379}{numeric value formatting}
\entry{decimal-point separator}{380}{decimal-point separator}
\entry{grouping of digits}{380}{grouping of digits}
\entry{currency symbols}{381}{currency symbols}
\entry{non-local exits}{385}{non-local exits}
\entry{long jumps}{385}{long jumps}
\entry{signal}{389}{signal}
\entry{generation of signals}{390}{generation of signals}
\entry{delivery of signals}{390}{delivery of signals}
\entry{pending signals}{390}{pending signals}
\entry{blocked signals}{390}{blocked signals}
\entry{specified action (for a signal)}{390}{specified action (for a signal)}
\entry{default action (for a signal)}{390}{default action (for a signal)}
\entry{signal action}{390}{signal action}
\entry{catching signals}{390}{catching signals}
\entry{signal names}{391}{signal names}
\entry{names of signals}{391}{names of signals}
\entry{signal number}{391}{signal number}
\entry{program error signals}{392}{program error signals}
\entry{exception}{393}{exception}
\entry{floating-point exception}{393}{floating-point exception}
\entry{illegal instruction}{394}{illegal instruction}
\entry{segmentation violation}{394}{segmentation violation}
\entry{bus error}{394}{bus error}
\entry{abort signal}{394}{abort signal}
\entry{program termination signals}{395}{program termination signals}
\entry{termination signal}{395}{termination signal}
\entry{interrupt signal}{395}{interrupt signal}
\entry{quit signal}{395}{quit signal}
\entry{quit signal}{395}{quit signal}
\entry{kill signal}{396}{kill signal}
\entry{hangup signal}{396}{hangup signal}
\entry{alarm signal}{397}{alarm signal}
\entry{virtual time alarm signal}{397}{virtual time alarm signal}
\entry{profiling alarm signal}{397}{profiling alarm signal}
\entry{input available signal}{397}{input available signal}
\entry{output possible signal}{397}{output possible signal}
\entry{urgent data signal}{397}{urgent data signal}
\entry{job control signals}{397}{job control signals}
\entry{child process signal}{398}{child process signal}
\entry{continue signal}{398}{continue signal}
\entry{stop signal}{398}{stop signal}
\entry{interactive stop signal}{398}{interactive stop signal}
\entry{terminal input signal}{399}{terminal input signal}
\entry{terminal output signal}{399}{terminal output signal}
\entry{pipe signal}{399}{pipe signal}
\entry{broken pipe signal}{399}{broken pipe signal}
\entry{lost resource signal}{400}{lost resource signal}
\entry{user signals}{400}{user signals}
\entry{signal messages}{401}{signal messages}
\entry{signal actions}{402}{signal actions}
\entry{establishing a handler}{402}{establishing a handler}
\entry{signal function}{402}{\code {signal} function}
\entry{default action for a signal}{402}{default action for a signal}
\entry{ignore action for a signal}{402}{ignore action for a signal}
\entry{sigaction function}{404}{\code {sigaction} function}
\entry{signal flags}{407}{signal flags}
\entry{flags for sigaction}{407}{flags for \code {sigaction}}
\entry{sigaction flags}{407}{\code {sigaction} flags}
\entry{initial signal actions}{408}{initial signal actions}
\entry{signal handler function}{409}{signal handler function}
\entry{non-local exit, from signal handler}{411}{non-local exit, from signal handler}
\entry{race conditions, relating to signals}{413}{race conditions, relating to signals}
\entry{handling multiple signals}{414}{handling multiple signals}
\entry{successive signals}{414}{successive signals}
\entry{merging of signals}{414}{merging of signals}
\entry{restrictions on signal handler functions}{417}{restrictions on signal handler functions}
\entry{volatile declarations}{417}{\code {volatile} declarations}
\entry{reentrant functions}{417}{reentrant functions}
\entry{EINTR, and restarting interrupted primitives}{421}{EINTR, and restarting interrupted primitives}
\entry{restarting interrupted primitives}{421}{restarting interrupted primitives}
\entry{interrupting primitives}{421}{interrupting primitives}
\entry{primitives, interrupting}{421}{primitives, interrupting}
\entry{sending signals}{422}{sending signals}
\entry{raising signals}{422}{raising signals}
\entry{signals, generating}{422}{signals, generating}
\entry{killing a process}{423}{killing a process}
\entry{interprocess communication, with signals}{425}{interprocess communication, with signals}
\entry{blocking signals}{427}{blocking signals}
\entry{signal set}{428}{signal set}
\entry{signal mask}{429}{signal mask}
\entry{process signal mask}{429}{process signal mask}
\entry{blocking signals, in a handler}{431}{blocking signals, in a handler}
\entry{pending signals, checking for}{432}{pending signals, checking for}
\entry{blocked signals, checking for}{432}{blocked signals, checking for}
\entry{checking for pending signals}{432}{checking for pending signals}
\entry{timing error in signal handling}{434}{timing error in signal handling}
\entry{waiting for a signal}{435}{waiting for a signal}
\entry{pause function}{435}{\code {pause} function}
\entry{process}{443}{process}
\entry{program arguments}{443}{program arguments}
\entry{command line arguments}{443}{command line arguments}
\entry{arguments, to program}{443}{arguments, to program}
\entry{program startup}{443}{program startup}
\entry{startup of program}{443}{startup of program}
\entry{invocation of program}{443}{invocation of program}
\entry{main function}{443}{\code {main} function}
\entry{argc (program argument count)}{443}{argc (program argument count)}
\entry{argv (program argument vector)}{443}{argv (program argument vector)}
\entry{program argument syntax}{444}{program argument syntax}
\entry{syntax, for program arguments}{444}{syntax, for program arguments}
\entry{command argument syntax}{444}{command argument syntax}
\entry{long-named options}{444}{long-named options}
\entry{program arguments, parsing}{445}{program arguments, parsing}
\entry{command arguments, parsing}{445}{command arguments, parsing}
\entry{parsing program arguments}{445}{parsing program arguments}
\entry{environment variable}{454}{environment variable}
\entry{environment}{455}{environment}
\entry{environment access}{455}{environment access}
\entry{environment representation}{455}{environment representation}
\entry{standard environment variables}{456}{standard environment variables}
\entry{HOME environment variable}{456}{HOME environment variable}
\entry{home directory}{456}{home directory}
\entry{LOGNAME environment variable}{456}{LOGNAME environment variable}
\entry{PATH environment variable}{456}{PATH environment variable}
\entry{TERM environment variable}{457}{TERM environment variable}
\entry{TZ environment variable}{457}{TZ environment variable}
\entry{LANG environment variable}{457}{LANG environment variable}
\entry{LC{\_}COLLATE environment variable}{457}{LC_COLLATE environment variable}
\entry{LC{\_}CTYPE environment variable}{457}{LC_CTYPE environment variable}
\entry{LC{\_}MONETARY environment variable}{457}{LC_MONETARY environment variable}
\entry{LC{\_}NUMERIC environment variable}{457}{LC_NUMERIC environment variable}
\entry{LC{\_}TIME environment variable}{457}{LC_TIME environment variable}
\entry{{\_}POSIX{\_}OPTION{\_}ORDER environment variable.}{458}{_POSIX_OPTION_ORDER environment variable.}
\entry{program termination}{458}{program termination}
\entry{process termination}{458}{process termination}
\entry{exit status value}{458}{exit status value}
\entry{exit status}{458}{exit status}
\entry{aborting a program}{460}{aborting a program}
\entry{process}{463}{process}
\entry{child process}{463}{child process}
\entry{parent process}{463}{parent process}
\entry{running a command}{463}{running a command}
\entry{process ID}{464}{process ID}
\entry{process lifetime}{464}{process lifetime}
\entry{creating a process}{464}{creating a process}
\entry{forking a process}{464}{forking a process}
\entry{child process}{464}{child process}
\entry{parent process}{464}{parent process}
\entry{process image}{464}{process image}
\entry{executing a file}{466}{executing a file}
\entry{exec functions}{466}{\code {exec} functions}
\entry{process completion}{469}{process completion}
\entry{waiting for completion of child process}{469}{waiting for completion of child process}
\entry{testing exit status of child process}{469}{testing exit status of child process}
\entry{process groups}{475}{process groups}
\entry{job control}{475}{job control}
\entry{job}{475}{job}
\entry{session}{475}{session}
\entry{shell}{475}{shell}
\entry{session}{475}{session}
\entry{session leader}{475}{session leader}
\entry{controlling terminal}{475}{controlling terminal}
\entry{foreground job}{476}{foreground job}
\entry{background job}{476}{background job}
\entry{stopped job}{476}{stopped job}
\entry{job control is optional}{476}{job control is optional}
\entry{controlling process}{477}{controlling process}
\entry{controlling terminal, access to}{477}{controlling terminal, access to}
\entry{SIGTTIN, from background job}{477}{\code {SIGTTIN}, from background job}
\entry{SIGTTOU, from background job}{477}{\code {SIGTTOU}, from background job}
\entry{orphaned process group}{477}{orphaned process group}
\entry{job control, enabling}{480}{job control, enabling}
\entry{subshell}{480}{subshell}
\entry{job control, enabling}{480}{job control, enabling}
\entry{launching jobs}{482}{launching jobs}
\entry{process group leader}{482}{process group leader}
\entry{process group ID}{482}{process group ID}
\entry{race conditions, relating to job control}{482}{race conditions, relating to job control}
\entry{foreground job, launching}{486}{foreground job, launching}
\entry{background job, launching}{487}{background job, launching}
\entry{stopped jobs, detecting}{487}{stopped jobs, detecting}
\entry{terminated jobs, detecting}{487}{terminated jobs, detecting}
\entry{SIGCHLD, handling of}{488}{\code {SIGCHLD}, handling of}
\entry{stopped jobs, continuing}{492}{stopped jobs, continuing}
\entry{process group functions}{493}{process group functions}
\entry{job control functions}{493}{job control functions}
\entry{controlling terminal, determining}{493}{controlling terminal, determining}
\entry{BSD compatibility library}{494}{BSD compatibility library}
\entry{Name Service Switch}{497}{Name Service Switch}
\entry{NSS}{497}{NSS}
\entry{databases}{497}{databases}
\entry{ethers}{497}{ethers}
\entry{group}{497}{group}
\entry{hosts}{497}{hosts}
\entry{netgroup}{497}{netgroup}
\entry{networks}{497}{networks}
\entry{protocols}{497}{protocols}
\entry{passwd}{497}{passwd}
\entry{rpc}{497}{rpc}
\entry{services}{497}{services}
\entry{shadow}{497}{shadow}
\entry{/etc/nsswitch.conf}{498}{\file {/etc/nsswitch.conf}}
\entry{nsswitch.conf}{498}{\file {nsswitch.conf}}
\entry{DNS server unavailable}{499}{DNS server unavailable}
\entry{nisplus, and completeness}{500}{nisplus, and completeness}
\entry{nisplus, and booting}{500}{nisplus, and booting}
\entry{bootstrapping, and services}{500}{bootstrapping, and services}
\entry{default value, and NSS}{500}{default value, and NSS}
\entry{optimizing NSS}{501}{optimizing NSS}
\entry{reentrant NSS functions}{501}{reentrant NSS functions}
\entry{login name}{507}{login name}
\entry{user name}{507}{user name}
\entry{user ID}{507}{user ID}
\entry{group name}{507}{group name}
\entry{group ID}{507}{group ID}
\entry{persona}{507}{persona}
\entry{effective user ID}{507}{effective user ID}
\entry{effective group ID}{507}{effective group ID}
\entry{real user ID}{507}{real user ID}
\entry{real group ID}{507}{real group ID}
\entry{supplementary group IDs}{508}{supplementary group IDs}
\entry{setuid programs}{509}{\code {setuid} programs}
\entry{login name, determining}{516}{login name, determining}
\entry{user ID, determining}{516}{user ID, determining}
\entry{user database}{517}{user database}
\entry{password database}{517}{password database}
\entry{converting user ID to user name}{518}{converting user ID to user name}
\entry{converting user name to user ID}{518}{converting user name to user ID}
\entry{scanning the user list}{519}{scanning the user list}
\entry{group database}{521}{group database}
\entry{converting group name to group ID}{521}{converting group name to group ID}
\entry{converting group ID to group name}{521}{converting group ID to group name}
\entry{scanning the group list}{523}{scanning the group list}
\entry{Netgroup}{524}{Netgroup}
\entry{POSIX capacity limits}{533}{POSIX capacity limits}
\entry{limits, POSIX}{533}{limits, POSIX}
\entry{capacity limits, POSIX}{533}{capacity limits, POSIX}
\entry{limits, program argument size}{533}{limits, program argument size}
\entry{limits, number of processes}{533}{limits, number of processes}
\entry{limits, number of open files}{533}{limits, number of open files}
\entry{limits, time zone name length}{534}{limits, time zone name length}
\entry{limits, number of supplementary group IDs}{534}{limits, number of supplementary group IDs}
\entry{POSIX optional features}{534}{POSIX optional features}
\entry{optional POSIX features}{534}{optional POSIX features}
\entry{limits, link count of files}{541}{limits, link count of files}
\entry{limits, terminal input queue}{541}{limits, terminal input queue}
\entry{limits, file name length}{541}{limits, file name length}
\entry{limits, pipe buffer size}{542}{limits, pipe buffer size}
\entry{consistency checking}{549}{consistency checking}
\entry{impossible events}{549}{impossible events}
\entry{assertions}{549}{assertions}
\entry{variable number of arguments}{550}{variable number of arguments}
\entry{variadic functions}{550}{variadic functions}
\entry{optional arguments}{550}{optional arguments}
\entry{function prototypes (variadic)}{552}{function prototypes (variadic)}
\entry{prototypes for variadic functions}{552}{prototypes for variadic functions}
\entry{variadic function prototypes}{552}{variadic function prototypes}
\entry{variadic function argument access}{552}{variadic function argument access}
\entry{arguments (variadic functions)}{552}{arguments (variadic functions)}
\entry{number of arguments passed}{553}{number of arguments passed}
\entry{how many arguments}{553}{how many arguments}
\entry{arguments, how many}{553}{arguments, how many}
\entry{variadic functions, calling}{554}{variadic functions, calling}
\entry{calling variadic functions}{554}{calling variadic functions}
\entry{declaring variadic functions}{554}{declaring variadic functions}
\entry{default argument promotions}{554}{default argument promotions}
\entry{argument promotion}{554}{argument promotion}
\entry{null pointer constant}{557}{null pointer constant}
\entry{integer type width}{558}{integer type width}
\entry{width of integer type}{558}{width of integer type}
\entry{type measurements, integer}{558}{type measurements, integer}
\entry{integer type range}{559}{integer type range}
\entry{range of integer type}{559}{range of integer type}
\entry{limits, integer types}{559}{limits, integer types}
\entry{floating type measurements}{560}{floating type measurements}
\entry{measurements of floating types}{560}{measurements of floating types}
\entry{type measurements, floating}{560}{type measurements, floating}
\entry{limits, floating types}{560}{limits, floating types}
\entry{sign (of floating point number)}{561}{sign (of floating point number)}
\entry{base (of floating point number)}{561}{base (of floating point number)}
\entry{radix (of floating point number)}{561}{radix (of floating point number)}
\entry{exponent (of floating point number)}{561}{exponent (of floating point number)}
\entry{bias (of floating point number exponent)}{561}{bias (of floating point number exponent)}
\entry{mantissa (of floating point number)}{561}{mantissa (of floating point number)}
\entry{significand (of floating point number)}{561}{significand (of floating point number)}
\entry{precision (of floating point number)}{561}{precision (of floating point number)}
\entry{hidden bit (of floating point number mantissa)}{561}{hidden bit (of floating point number mantissa)}
\entry{normalized floating point number}{562}{normalized floating point number}
\entry{IEEE floating point representation}{565}{IEEE floating point representation}
\entry{floating point, IEEE}{565}{floating point, IEEE}
\entry{installing the library}{659}{installing the library}
\entry{installation tools}{661}{installation tools}
\entry{tools, for installing library}{661}{tools, for installing library}
\entry{configurations, all supported}{662}{configurations, all supported}
\entry{reporting bugs}{664}{reporting bugs}
\entry{bugs, reporting}{664}{bugs, reporting}
