161577Sbostic.\" Copyright (c) 1980, 1991, 1993 261577Sbostic.\" The Regents of the University of California. All rights reserved. 320397Smckusick.\" 449086Scael.\" %sccs.include.redist.man% 520397Smckusick.\" 6*69055Sbostic.\" @(#)intro.3 8.2 (Berkeley) 04/28/95 749086Scael.\" 849086Scael.Dd 949086Scael.Dt INTRO 3 1049086Scael.Os BSD 4 1149086Scael.Sh NAME 1249086Scael.Nm intro 1349086Scael.Nd introduction to the C libraries 1449086Scael.Sh DESCRIPTION 1549086ScaelThis section provides an overview of the C 1649086Scaellibrary functions, their error returns and other 1749086Scaelcommon definitions and concepts. 1849086ScaelMost of these functions are available from the C library, 19*69055Sbostic.Em libc . 2049086ScaelOther libraries, such as the math library, 2149086Scael.Em libm , 2249086Scaelmust be indicated at compile time with the 2349086Scael.Fl l 2449086Scaeloption of the compiler. 2549086Scael.Pp 2649086ScaelA subset of the 2749086Scael.Xr libc functions 2849086Scaelare available from Fortran; 2928047Smckusickthey are described separately in 3049086Scael.Xr intro 3f . 3149086Scael.Pp 3249086ScaelThe various libraries (followed by the loader flag): 3350726Scael.Bl -tag -width "libc (-lc)" 3449086Scael.It Xr libc Pq Fl l Ns Ar c 35*69055SbosticStandard C library functions. 36*69055SbosticWhen using the C compiler 3749086Scael.Xr cc 1 , 3849086Scaelit is not necessary 3949086Scaelto supply the loader flag 4049086Scael.Fl l Ns Ar c 4149086Scaelfor these functions. 4249086ScaelThere are several `libraries' or groups of functions included inside of 4349086Scael.Xr libc : the standard 4449086Scael.Tn I/O 4549086Scaelroutines, 4649086Scaeldatabase routines, 4749086Scaelbit operators, 4849086Scaelstring operators, 4949086Scaelcharacter tests and character operators, 5049086Scaeldes encryption routines, 5149086Scaelstorage allocation, time functions, signal handling and more. 5249086Scael.It Xo 5349086Scael.Xr libcurses 5449086Scael.Pf ( Fl l Ns Ar curses 5549086Scael.Fl l Ns Ar termcap ) 5649086Scael.Xc 5749086ScaelTerminal independent screen management routines 5849086Scaelfor two dimensional non-bitmap display terminals. 5949086Scael(See 6049086Scael.Xr curses 3 . ) 6149086Scael.It Xr libcompat Pq Fl l Ns Ar compat 6249086ScaelFunctions which are obsolete but are available for compatibility with 6349086Scael.Bx 4.3 . 6428047SmckusickIn particular, 6520398Smckusicka number of system call interfaces provided in previous releases of 6649086Scael.Bx 6749086Scaelhave been included for source code compatibility. 6828047SmckusickUse of these routines should, for the most part, be avoided. 6928047SmckusickThe manual page entry for each compatibility routine 7028047Smckusickindicates the proper interface to use. 7149086Scael.\" .It Xr libkvm 7249086Scael.It Xr libl Pq Fl l Ns Ar l 7349086ScaelThe library for 7449086Scael.Xr lex 1 . 7549086Scael.\" .It Xr libln 7649086Scael.It Xr libm Pq Fl l Ns Ar m 7749086ScaelThe math library, 7849086Scael.Em libm . 7928047SmckusickThe math library is loaded as needed by the Pascal compiler 8049086Scael.Xr pc 1 , 8149086Scaelbut not by the C compiler which requires the 8249086Scael.Fl l Ns Ar m 8349086Scaelflag. 8449086Scael(See 8549086Scael.Xr math 3 . ) 8649086Scael.It Xr libmp Pq Fl l Ns Ar mp 8749086Scael.\" .It Xr libom 8849086Scael.\" Old math library. 8949086Scael.It Xr libplot Pq Fl l Ns Ar plot 9049086ScaelDevice independent plotting functions. 9149086Scael(See 9249086Scael.Xr plot 3 . ) 9349086Scael.It Xr libplotf77 Pq Fl l Ns Ar plotf77 9449086ScaelThe device independent plotting functions for fortran. 9549086Scael(See 9649086Scael.Xr plot 3 . ) 9749086Scael.\" .It Xr libresolv Pq Fl l Ns Ar resolv 9849086Scael.\" Routines for network address resolution. 9949086Scael.It Xr libtermcap Fl l Ns Ar termcap 10049086ScaelThe terminal independent operation library package. (See 10149086Scael.Xr termcap 3 . ) 10249086Scael.\" .It libvt0.a 10349086Scael.It Xr liby Pq Fl l Ns Ar y 10449086ScaelThe library for 10549086Scael.Xr yacc 1 . 10649086Scael.El 10749086Scael.Sh FILES 10849086Scael.Bl -tag -width /usr/lib/libm_p.a -compact 10949086Scael.It Pa /usr/lib/libc.a 11049086Scaelthe C library 11149086Scael.It Pa /usr/lib/libm.a 11249086Scaelthe math library 11349086Scael.It Pa /usr/lib/libc_p.a 11449086Scaelthe C library compiled for profiling 11549086Scael.It Pa /usr/lib/libm_p.a 11649086Scaelthe math library compiled for profiling 11749086Scael.El 11849086Scael.Sh SEE ALSO 11949086Scael.\" .Xr libc 3 , 12049086Scael.Xr stdio 3 , 12149086Scael.Xr math 3 , 12249086Scael.Xr intro 2 , 12349086Scael.Xr cc 1 , 12449086Scael.Xr ld 1 , 12549086Scael.Xr nm 1 12649086Scael.\" .Sh LIST OF FUNCTIONS 12749086Scael.\" .Bl -column "strncasecmpxxx" "system" 12849086Scael.\" .Sy Name Description 12949086Scael.\" .El 13049086Scael.Sh HISTORY 13149086ScaelAn 13249086Scael.Nm intro 13349086Scaelmanual appeared in 13449086Scael.At v7 . 135