\input texinfo   @c -*-texinfo-*-
@c %**start of header
@setfilename ../../info/libc.inf
@settitle libc.a reference
@c %**end of header

@setchapternewpage odd
@paragraphindent 0

@ifinfo
This is the reference manual for libc.a

Copyright (c) 1996 DJ Delorie
@end ifinfo

@titlepage
@sp 10
@comment The title is printed in a large font.
@center @titlefont{libc.a reference}

@c The following two commands start the copyright page.
@page
@vskip 0pt plus 1filll
Copyright @copyright{} 1996 DJ Delorie
@end titlepage

@node    Top,       Introduction,  (dir),    (dir)
@comment node-name, next,          previous, up

@menu
* Introduction::

* Functional Categories::  All public symbols listed by
                           category

* Alphabetical List::      All public symbols in alphabetical
                           order

* Index::
@end menu

@node    Introduction, Functional Categories, Top,      Top
@comment node-name,    next,                  previous, up
@chapter Introduction

The standard C library, @file{libc.a}, is automatically linked into your
programs by the @file{gcc} control program.  It provides many of the
functions that are normally associated with C programs.  This document
gives the proper usage information about each of the functions and
variables found in @file{libc.a}. 

For each function or variable that the library provides, the definition
of that symbol will include information on which header files to include
in your source to obtain prototypes and type definitions relevent to the
use of that symbol. 

Note that many of the functions in @file{libm.a} (the math library) are
defined in @file{math.h} but are not present in libc.a.  Some are, which
may get confusing, but the rule of thumb is this - the C library
contains those functions that ANSI dictates must exist, so that you
don't need the @code{-lm} if you only use ANSI functions.  These
functions are, however, vastly simplified compared to the ANSI spec and
the functions in @file{libm.a}, which includes replacements.  For
example, @code{libc.a}'s @code{ldexp()} doesn't set @code{errno} on
error, but @code{libm.a}'s @code{ldexp()} does.

@include libc2.tex

@node Index,,,Top
@printindex cp

@xref{Alphabetical List}

@contents
@bye

