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