1.\" $NetBSD: intro.3,v 1.4 1994/11/30 15:24:34 jtc Exp $ 2.\" 3.\" Copyright (c) 1980, 1991, 1993 4.\" The Regents of the University of California. All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 9.\" 1. Redistributions of source code must retain the above copyright 10.\" notice, this list of conditions and the following disclaimer. 11.\" 2. Redistributions in binary form must reproduce the above copyright 12.\" notice, this list of conditions and the following disclaimer in the 13.\" documentation and/or other materials provided with the distribution. 14.\" 3. All advertising materials mentioning features or use of this software 15.\" must display the following acknowledgement: 16.\" This product includes software developed by the University of 17.\" California, Berkeley and its contributors. 18.\" 4. Neither the name of the University nor the names of its contributors 19.\" may be used to endorse or promote products derived from this software 20.\" without specific prior written permission. 21.\" 22.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 23.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 26.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32.\" SUCH DAMAGE. 33.\" 34.\" @(#)intro.3 8.1 (Berkeley) 6/5/93 35.\" 36.Dd June 5, 1993 37.Dt INTRO 3 38.Os BSD 4 39.Sh NAME 40.Nm intro 41.Nd introduction to the C libraries 42.Sh DESCRIPTION 43This section provides an overview of the C 44library functions, their error returns and other 45common definitions and concepts. 46Most of these functions are available from the C library, 47.Em libc 48(see 49.Xr libc 3 ) . 50Other libraries, such as the math library, 51.Em libm , 52must be indicated at compile time with the 53.Fl l 54option of the compiler. 55.Pp 56A subset of the 57.Xr libc functions 58are available from Fortran; 59they are described separately in 60.Xr intro 3f . 61.Pp 62The various libraries (followed by the loader flag): 63.Bl -tag -width "libc (-lc)" 64.It Xr libc Pq Fl l Ns Ar c 65Standard C library functions. (See 66.Xr libc 3 . ) When using the C compiler 67.Xr cc 1 , 68it is not necessary 69to supply the loader flag 70.Fl l Ns Ar c 71for these functions. 72There are several `libraries' or groups of functions included inside of 73.Xr libc : the standard 74.Tn I/O 75routines, 76database routines, 77bit operators, 78string operators, 79character tests and character operators, 80des encryption routines, 81storage allocation, time functions, signal handling and more. 82.It Xo 83.Xr libcurses 84.Pf ( Fl l Ns Ar curses 85.Fl l Ns Ar termcap ) 86.Xc 87Terminal independent screen management routines 88for two dimensional non-bitmap display terminals. 89(See 90.Xr curses 3 . ) 91.It Xr libcompat Pq Fl l Ns Ar compat 92Functions which are obsolete but are available for compatibility with 93.Bx 4.3 . 94In particular, 95a number of system call interfaces provided in previous releases of 96.Bx 97have been included for source code compatibility. 98Use of these routines should, for the most part, be avoided. 99The manual page entry for each compatibility routine 100indicates the proper interface to use. 101.\" .It Xr libkvm 102.It Xr libl Pq Fl l Ns Ar l 103The library for 104.Xr lex 1 . 105.\" .It Xr libln 106.It Xr libm Pq Fl l Ns Ar m 107The math library, 108.Em libm . 109The math library is loaded as needed by the Pascal compiler 110.Xr pc 1 , 111but not by the C compiler which requires the 112.Fl l Ns Ar m 113flag. 114(See 115.Xr math 3 . ) 116.It Xr libmp Pq Fl l Ns Ar mp 117.\" .It Xr libom 118.\" Old math library. 119.It Xr libplot Pq Fl l Ns Ar plot 120Device independent plotting functions. 121(See 122.Xr plot 3 . ) 123.It Xr libplotf77 Pq Fl l Ns Ar plotf77 124The device independent plotting functions for fortran. 125(See 126.Xr plot 3 . ) 127.\" .It Xr libresolv Pq Fl l Ns Ar resolv 128.\" Routines for network address resolution. 129.It Xr libtermcap Pq Fl l Ns Ar termcap 130The terminal independent operation library package. (See 131.Xr termcap 3 . ) 132.\" .It libvt0.a 133.It Xr liby Pq Fl l Ns Ar y 134The library for 135.Xr yacc 1 . 136.El 137.Sh FILES 138.Bl -tag -width /usr/lib/libm_p.a -compact 139.It Pa /usr/lib/libc.a 140the C library 141.It Pa /usr/lib/libm.a 142the math library 143.It Pa /usr/lib/libc_p.a 144the C library compiled for profiling 145.It Pa /usr/lib/libm_p.a 146the math library compiled for profiling 147.El 148.Sh SEE ALSO 149.\" .Xr libc 3 , 150.Xr stdio 3 , 151.Xr math 3 , 152.Xr intro 2 , 153.Xr cc 1 , 154.Xr ld 1 , 155.Xr nm 1 156.\" .Sh LIST OF FUNCTIONS 157.\" .Bl -column "strncasecmpxxx" "system" 158.\" .Sy Name Description 159.\" .El 160.Sh HISTORY 161An 162.Nm intro 163manual appeared in 164.At v7 . 165