+'\" t
.\" Copyright 1993 David Metcalfe (david@prism.demon.co.uk)
.\" and Copyright 2008, Linux Foundation, written by Michael Kerrisk
.\" <mtk.manpages@gmail.com>
.\"
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date. The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein. The author(s) may not
-.\" have taken the same level of care in the production of this manual,
-.\" which is licensed free of charge, as they might when working
-.\" professionally.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and authors of this work.
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.\" References consulted:
.\" Linux libc source code
.\" Modified 2002-07-27 by Walter Harms
.\" (walter.harms@informatik.uni-oldenburg.de)
.\"
-.TH EXP 3 2010-09-20 "" "Linux Programmer's Manual"
+.TH exp 3 (date) "Linux man-pages (unreleased)"
.SH NAME
exp, expf, expl \- base-e exponential function
+.SH LIBRARY
+Math library
+.RI ( libm ", " \-lm )
.SH SYNOPSIS
.nf
.B #include <math.h>
-.sp
+.PP
.BI "double exp(double " x );
-.br
.BI "float expf(float " x );
-.br
.BI "long double expl(long double " x );
.fi
-.sp
-Link with \fI\-lm\fP.
-.sp
-.in -4n
+.PP
+.RS -4
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
-.in
-.sp
-.ad l
+.RE
+.PP
.BR expf (),
.BR expl ():
-.RS 4
-_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE\ >=\ 600 || _ISOC99_SOURCE ||
-_POSIX_C_SOURCE\ >=\ 200112L;
-.br
-or
-.I cc\ -std=c99
-.RE
-.ad b
+.nf
+ _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
+ || /* Since glibc 2.19: */ _DEFAULT_SOURCE
+ || /* Glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
+.fi
.SH DESCRIPTION
-The
-.BR exp ()
-function returns the value of e (the base of natural
-logarithms) raised to the power of \fIx\fP.
+These functions return the value of e (the base of natural
+logarithms) raised to the power of
+.IR x .
.SH RETURN VALUE
On success, these functions return the exponential value of
.IR x .
-
+.PP
If
.I x
is a NaN,
a NaN is returned.
-
+.PP
If
.I x
is positive infinity,
positive infinity is returned.
-
+.PP
If
.I x
is negative infinity,
+0 is returned.
-
+.PP
If the result underflows,
a range error occurs,
and zero is returned.
-
+.PP
If the result overflows,
a range error occurs,
and the functions return
.BR math_error (7)
for information on how to determine whether an error has occurred
when calling these functions.
-
+.PP
The following errors can occur:
.TP
Range error, overflow
An underflow floating-point exception
.RB ( FE_UNDERFLOW )
is raised.
-.SH CONFORMING TO
-C99, POSIX.1-2001.
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.ad l
+.nh
+.TS
+allbox;
+lbx lb lb
+l l l.
+Interface Attribute Value
+T{
+.BR exp (),
+.BR expf (),
+.BR expl ()
+T} Thread safety MT-Safe
+.TE
+.hy
+.ad
+.sp 1
+.SH STANDARDS
+C99, POSIX.1-2001, POSIX.1-2008.
+.PP
The variant returning
.I double
also conforms to
.BR cexp (3),
.BR exp10 (3),
.BR exp2 (3),
+.BR expm1 (3),
.BR sqrt (3)