-.TH FREXP 3 ""
-.AT 3
-.SH NAME
-frexp, ldexp, modf \- split into mantissa and exponent
-.SH SYNOPSIS
-.nf
-.B double frexp(value, eptr)
-.B double value;
-.B int *eptr;
-.PP
-.B double ldexp(value, exp)
-.B double value;
-.PP
-.B double modf(value, iptr)
-.B double value, *iptr;
-.SH DESCRIPTION
-Every nonzero number can be written uniquely as
-.if t \fIx\fP\|\(**\|2\u\fIn\fP\d,
-.if n \fIx\fP * 2^\fIn\fP,
-where the ``mantissa'' (fraction) \fIx\fP is in the range 0.5 <= |x| < 1.0,
-and the ``exponent'' \fIn\fP is an integer. \fIFrexp\fP returns the
-mantissa of a double \fIvalue\fP, and stores the exponent indirectly in
-the location pointed to by \fIeptr\fP. If \fIvalue\fP is 0, both results
-returned by \fIfrexp\fP are 0.
-.PP
-\fILdexp\fP returns the quantity
-.if t \fIvalue\|\(**\|2\u\fIexp\fP\d.
-.if n \fIvalue\fP * 2^\fIexp\fP.
-.PP
-\fIModf\fP returns the signed fractional part of \fIvalue\fP
-and stores the integer part indirectly in the location pointed
-to by \fIiptr\fP.
-.SH DIAGNOSTICS
-If \fIldexp\fP would cause overflow, \fBHUGE\fP is returned
-and \fIerrno\fP is set to \fBERANGE\fP.
+.\" %sccs.include.redist.man%
+.\"
+.\" @(#)frexp.3 6.4 (Berkeley) %G%
+.\"
+.Dd
+.Dt FREXP 3
+.Os
+.Sh NAME
+.Nm frexp
+.Nd convert floating-point number to fractional and integral components
+.Sh SYNOPSIS
+.Fd #include <math.h>
+.Ft double
+.Fn frexp "double value" "int *exp"
+.Sh DESCRIPTION
+The
+.Fn frexp
+function breaks a floating-point number into a normalized
+fraction and an integral power of 2.
+It stores the integer in the
+.Em int
+object pointed to by
+.Fa exp .
+.Sh RETURN VALUES
+The
+.Fn frexp
+function returns the value
+.Em x ,
+such that
+.Em x
+is a
+.Em double
+with magnitude in the interval
+.Bq 1/2 , 1
+or zero, and
+.Fa value
+equals
+.Em x
+times 2 raised to the power
+.Fa *exp .
+If
+.Fa value
+is zero, both parts of the result are zero.
+.Sh SEE ALSO
+.Xr ldexp 3 ,
+.Xr modf 3 ,
+.Xr math 3
+.Sh STANDARDS
+The
+.Fn frexp
+function conforms to
+.St -ansiC .