This chapter groups a wide variety of mathematical functions. The corresponding definitions and declarations are in math.h. Two definitions from math.h are of particular interest.
double
is defined as
HUGE_VAL
; this number is returned on overflow by many functions.
The macro HUGE_VALF
is a corresponding value for float
.
exception
is used when you write customized error
handlers for the mathematical functions. You can customize error
handling for most of these functions by defining your own version of
matherr
; see the section on matherr
for details.
Since the error handling code calls fputs
, the mathematical
subroutines require stubs or minimal implementations for the same list
of OS subroutines as fputs
: close
, fstat
,
isatty
, lseek
, read
, sbrk
, write
.
See System Calls,
for a discussion and for sample minimal implementations of these support
subroutines.
Alternative declarations of the mathematical functions, which exploit specific machine capabilities to operate faster—but generally have less error checking and may reflect additional limitations on some machines—are available when you include fastmath.h instead of math.h.