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