xref: /freebsd/share/man/man3/intro.3 (revision bc96366c864c07ef352edb92017357917c75b36c)
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