# nextup - Man Page

return next floating-point number toward positive/negative infinity

## Synopsis

#define _GNU_SOURCE/* See feature_test_macros(7) */#include <math.h> double nextup(doublex); float nextupf(floatx); long double nextupl(long doublex); double nextdown(doublex); float nextdownf(floatx); long double nextdownl(long doublex);

`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).

Interface | Attribute | Value |
---|---|---|

nextup(), nextupf(), nextupl(), nextdown(), nextdownf(), nextdownl() | Thread safety | MT-Safe |

## Conforming to

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

## See Also

## Colophon

This page is part of release 5.11 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/.

## Referenced By

The man pages nextdown(3), nextdownf(3), nextdownl(3), nextupf(3) and nextupl(3) are aliases of nextup(3).