xref: /dragonfly/share/man/man3/intro.3 (revision 0de61e28)
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: src/share/man/man3/intro.3,v 1.9.2.4 2001/08/17 13:08:36 ru Exp $
30.\"
31.Dd March 28, 2020
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.\" .Em 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 ".Em libc Pq Fl l Ns Ar c"
59.It Em 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.Em 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 Em 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 Em 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 Em libkvm Pq Fl l Ns Ar kvm
96Functions used to access kernel memory are in this library.  They can be used
97against both a running system and a crash dump.
98(See
99.Xr kvm 3 . )
100.It Em libl Pq Fl l Ns Ar l
101The library for
102.Xr lex 1 .
103.\" .It Em libln
104.It Em libm Pq Fl l Ns Ar m
105The math library,
106.Em libm .
107.It Em libmp Pq Fl l Ns Ar mp
108.\" .It Em libom
109.\" Old math library.
110.\" .It Em libplot Pq Fl l Ns Ar plot
111.\" Device independent plotting functions.
112.\" (See
113.\" .Xr plot 3 . )
114.\" .It Em libplotf77 Pq Fl l Ns Ar plotf77
115.\" The device independent plotting functions for fortran.
116.\" (See
117.\" .Xr plot 3 . )
118.\" .It Em libresolv Pq Fl l Ns Ar resolv
119.\" Routines for network address resolution.
120.It Em libtermcap Pq Fl l Ns Ar termcap
121The terminal independent operation library package.
122(See
123.Xr termcap 3 . )
124.\" .It libvt0.a
125.It Em liby Pq Fl l Ns Ar y
126The library for
127.Xr yacc 1 .
128.El
129.Sh FILES
130.Bl -tag -width /usr/lib/profile/libc.a -compact
131.It Pa /usr/lib/libc.a
132the C library
133.It Pa /usr/lib/profile/libc.a
134the C library compiled for profiling
135.It Pa /usr/lib/libm.a
136the math library
137.It Pa /usr/lib/profile/libm.a
138the math library compiled for profiling
139.El
140.Sh SEE ALSO
141.\" .Xr libc 3 ,
142.Xr cc 1 ,
143.Xr ld 1 ,
144.Xr nm 1 ,
145.Xr intro 2 ,
146.Xr stdio 3
147.\" .Sh LIST OF FUNCTIONS
148.\" .Bl -column "strncasecmpxxx" "system"
149.\" .Sy Name	Description
150.\" .El
151.Sh HISTORY
152An
153.Nm
154manual appeared in
155.At v7 .
156