**NAME**

sqrt, sqrtf, sqrtl - square root function

**SYNOPSIS**

**#include** **<math.h>**
**double** **sqrt(double** __x__**);**
**float** **sqrtf(float** __x__**);**
**long** **double** **sqrtl(long** **double** __x__**);**
Link with __-lm__.
Feature Test Macro Requirements for glibc (see **feature_test_macros**(7)):
**sqrtf**(), **sqrtl**(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE >= 600
|| _ISOC99_SOURCE; or __cc__ __-std=c99__

**DESCRIPTION**

The **sqrt**() function returns the nonnegative square root of __x__.

**RETURN** **VALUE**

On success, these functions return the square root of __x__.
If __x__ is a NaN, a NaN is returned.
If __x__ is +0 (-0), +0 (-0) is returned.
If __x__ is positive infinity, positive infinity is returned.
If __x__ is less than -0, a domain error occurs, and a NaN is returned.

**ERRORS**

See **math_error**(7) for information on how to determine whether an error
has occurred when calling these functions.
The following errors can occur:
Domain error: __x__ less than -0
__errno__ is set to **EDOM**. An invalid floating-point exception
(**FE_INVALID**) is raised.

**CONFORMING** **TO**

C99, POSIX.1-2001. The variant returning __double__ also conforms to SVr4,
4.3BSD, C89.

**SEE ALSO**

**cbrt**(3), **csqrt**(3), **hypot**(3)

**COLOPHON**

This page is part of release 3.24 of the Linux __man-pages__ project. A
description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
2008-08-05