# NEXTUP

NAME

SYNOPSIS

DESCRIPTION

RETURN VALUE

VERSIONS

ATTRIBUTES

CONFORMING TO

SEE ALSO

COLOPHON

## NAME

nextup,
nextupf, nextupl, nextdown, nextdownf, nextdownl - return
next floating-point number toward positive/negative
infinity

## SYNOPSIS

**#define
_GNU_SOURCE** /* See feature_test_macros(7) */

#include <math.h>

**double
nextup(double** *x***); **

float nextupf(float *x***); **

long double nextupl(long double *x***);**

**double
nextdown(double** *x***); **

float nextdownf(float *x***); **

long double nextdownl(long double *x***);**

Link with
*-lm*.

## DESCRIPTION

The
**nextup**(), **nextupf**(), and **nextupl**()
functions return the next representable floating-point
number greater than *x*.

If *x* is
the smallest representable negative number in the
corresponding type, these functions return -0. If *x*
is 0, the returned value is the smallest representable
positive number of the corresponding type.

If *x* is
positive infinity, the returned value is positive infinity.
If *x* is negative infinity, the returned value is the
largest representable finite negative number of the
corresponding type.

If *x* is
Nan, the returned value is NaN.

The value
returned by *nextdown(x)* is *-nextup(-x)*, and
similarly for the other types.

## RETURN VALUE

See
DESCRIPTION.

## VERSIONS

These functions
first appeared in glibc in version 2.24.

## ATTRIBUTES

For an
explanation of the terms used in this section, see
**attributes**(7).

## CONFORMING TO

These functions
are described in *IEEE Std 754-2008 - Standard for
Floating-Point Arithmetic* and *ISO/IEC TS
18661*.

## SEE ALSO

**nearbyint**(3),
**nextafter**(3)

## COLOPHON

This page is
part of release 4.15 of the Linux *man-pages* project.
A description of the project, information about reporting
bugs, and the latest version of this page, can be found at
https://www.kernel.org/doc/man-pages/.