Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

intro(3) [v7 man page]

INTRO(3)						     Library Functions Manual							  INTRO(3)

NAME
intro - introduction to library functions SYNOPSIS
#include <stdio.h> #include <math.h> DESCRIPTION
This section describes functions that may be found in various libraries, other than those functions that directly invoke UNIX system primi- tives, which are described in section 2. Functions are divided into various libraries distinguished by the section number at the top of the page: (3) These functions, together with those of section 2 and those marked (3S), constitute library libc, which is automatically loaded by the C compiler cc(1) and the Fortran compiler f77(1). The link editor ld(1) searches this library under the `-lc' option. Declara- tions for some of these functions may be obtained from include files indicated on the appropriate pages. (3M) These functions constitute the math library, libm. They are automatically loaded as needed by the Fortran compiler f77(1). The link editor searches this library under the `-lm' option. Declarations for these functions may be obtained from the include file <math.h>. (3S) These functions constitute the `standard I/O package', see stdio(3). These functions are in the library libc already mentioned. Declarations for these functions may be obtained from the include file <stdio.h>. (3X) Various specialized libraries have not been given distinctive captions. The files in which these libraries are found are named on the appropriate pages. FILES
/lib/libc.a /lib/libm.a, /usr/lib/libm.a (one or the other) SEE ALSO
stdio(3), nm(1), ld(1), cc(1), f77(1), intro(2) DIAGNOSTICS
Functions in the math library (3M) may return conventional values when the function is undefined for the given arguments or when the value is not representable. In these cases the external variable errno (see intro(2)) is set to the value EDOM or ERANGE. The values of EDOM and ERANGE are defined in the include file <math.h>. ASSEMBLER
In assembly language these functions may be accessed by simulating the C calling sequence. For example, ecvt(3) might be called this way: setd mov $sign,-(sp) mov $decpt,-(sp) mov ndigit,-(sp) movf value,-(sp) jsr pc,_ecvt add $14.,sp INTRO(3)

Check Out this Related Man Page

intro(3)						     Library Functions Manual							  intro(3)

Name
       intro - introduction to library functions

Description
       This  section  describes  functions  that may be found in various libraries.  The library functions are those other than the functions that
       directly invoke ULTRIX system primitives, described in section 2.  Section 3 has the libraries physically grouped together.  The  functions
       described in this section are grouped into various libraries:

Sections 3 and 3s
       The(3) functions are the standard C library functions.  The C library also includes all the functions described in Section 2.	These rou-
       tines are included for compatibility with other systems.  In particular, a number of system call interfaces provided in	4.2BSD	have  been
       included  for  source code compatibility.  The(3s) functions comprise the standard I/O library.  Together with the(3n), (3xti), (3yp) and(3) routines, these functions constitute library libc, which is automatically loaded by the C compiler (cc), the Pascal compiler (pc),  and
       the  FORTRAN  compiler (f77).  (FORTRAN and Pascal are optional and may not be installed on your system.)  Declarations for these functions
       may be obtained from the include file, <stdio.h>.  The link editor searches this library under the -lc option.  Declarations  for  some	of
       these functions may be obtained from include files indicated on the appropriate pages.  On VAX machines, the GFLOAT version of libc is used
       when you use the command with the -Mg option, or you use the command with the -lcg option.  The GFLOAT version of libc must  be	used  with
       modules compiled with using the -Mg option.

       Note  that  neither  the  compiler  nor the linker can detect when mixed double floating point types are used, and your program may produce
       erroneous results if this occurs on a VAX machine.

Section 3cur
       The(3cur) library routines make up the X/Open curses library.  These routines are different from the 4.2BSD curses routines  contained	in
       Section 3x.

Section 3f
       The(3f) functions are all functions callable from FORTRAN.  These functions perform the same jobs as do the(3) functions.  An unsupported
       FORTRAN compiler, f77, is included in the VAX distribution. FORTRAN is available as a layered product on both VAX and RISC machines.

Section 3int
       The(3int) functions assist programs in supporting native language interfaces.  They are found in the internationalization library libi.

Section 3krb
       The library of routines for the Kerberos authentication service. These routines support the authentication of commonly  networked  applica-
       tions across machine boundaries in a distributed network.

Section 3m
       The(3m) functions constitute the math library, libm.  They are automatically loaded as needed by the Pascal compiler (pc) and the FORTRAN
       compiler (f77).	The link editor searches this library under the -lm option.  Declarations for these functions may  be  obtained  from  the
       include file, < math.h >.  On VAX machines, the GFLOAT version of libm is used when you use the command with the -lcg option. Note that you
       must use the GFLOAT version of libm with modules compiled using the command with the -Mg option.

       Note that neither the compiler nor the linker can detect when mixed double floating point types are used, and the program may produce erro-
       neous results if this occurs on a VAX machine.

Section 3ncs
       This  section  describes  the NCS (Network Computing System) library routines.  The Title, Name, and See Also sections of the NCS reference
       pages do not contain the dollar ($) sign in the command names and library routines.  The actual NCS commands and library routines  do  con-
       tain the dollar ($) sign.

Section 3n
       These functions constitute the internet network library,

Section 3x
       Various	specialized  libraries have not been given distinctive captions.  Files in which such libraries are found are named on appropriate
       pages.

Section 3xti
       The X/Open Transport Interface defines a transport service interface that is independent of any specific transport provider.  The interface
       is provided by way of a set of library functions for the C programming language.

Section 3yp
       These functions are specific to the Yellow Pages (YP) service.

Environmental Compatibility
       The  libraries  in  Sections 3, 3m, and 3s contain System V and POSIX compatibility features that are available to general ULTRIX programs.
       This compatibility sometimes conflicts with features already present in ULTRIX.	That is, the function performed may be slightly  different
       in  the	System	V or POSIX environment.  These features are provided for applications that are being ported from System V or written for a
       POSIX environment.

       The descriptions in these sections include an ENVIRONMENT section to describe any differences in function between System V or POSIX and the
       standard C runtime library.

       The System V compatibility features are not contained in the standard C runtime library.  To get System V-specific behavior, you must spec-
       ify that the System V environment is to be used in compiling and linking programs.  You can do this in one of two ways:

       1.   Using the -YSYSTEM_FIVE option for the command.

       2.   Globally setting the environment variable PROG_ENV to SYSTEM_FIVE.	If you are using the C shell,  you  would  execute  the  following
	    line, or include it in your .login file:
	    setenv PROG_ENV SYSTEM_FIVE
	    If you are using the Bourne shell, you would execute the following line, or include it in your .profile file:
	    PROG_ENV=SYSTEM_FIVE ; export PROG_ENV

       In  both  cases,  the  command defines the preprocessor symbol SYSTEM_FIVE, so that the C preprocessor, will select the System V version of
       various data structures and symbol definitions.

       In addition, if invokes the library libcV.a (the System V version of the Standard C library) is searched before libc.a  to  resolve  refer-
       ences  to  the  System-V-specific  routines.  Also, if -lm is specified on either the or the command line, then the System V version of the
       math library will be used instead of the regular ULTRIX math library.

       The POSIX compatibility features are included in the library libcP.a, so the only special action needed is to specify -YPOSIX on  the  com-
       mand  line or set the environment variable PROG_ENV to POSIX.  Either action will cause the command to define the preprocessor symbol POSIX
       and search the POSIX library.

Files
       /usr/lib/libc.a

       /usr/lib/lib_cg.a	     (VAX only)

       /usr/lib/libm.a

       /usr/lib/libc_p.a	     (VAX only)

       /usr/lib/m_g.a		     (VAX only)

       /usr/lib/libm_p.a	     (VAX only)

Diagnostics
       Functions in the math library(3m) may return conventional values when the function is undefined for the given arguments or when the  value
       is  not	representable.	 In  these cases the external variable errno is set to the value EDOM (domain error) or ERANGE (range error).  For
       further information, see The values of EDOM and ERANGE are defined in the include file <math.h>.

See Also
       cc(1), ld(1), nm(1), intro(2) intro(3m), intro(3n), intro(3ncs), intro(3s), intro(3xti)

																	  intro(3)
Man Page