---
name: "rint"
section: "3"
platform: "freebsd"
package: "base"
version: "16.0-CURRENT-20261027-61c70dc16a79"
release: "FreeBSD 16.0-CURRENT (2026-10-27)"
platforms: ["linux", "freebsd"]
url: "https://new.carta.tech/nearbyint"
---

# rint(3)

round to integral value in floating-point format

Part of [nearbyint(3)](/nearbyint/3.md).

## NAME

**nearbyint**, **nearbyintf**, **nearbyintl**, **rint**, **rintf**, **rintl** – round to integral value in floating-point format

## LIBRARY

Math Library (libm, -lm)

## SYNOPSIS

**#include \<math.h\>**

*double*\

**nearbyint**(*double x*);

*float*\

**nearbyintf**(*float x*);

*long* *double*\

**nearbyintl**(*long double x*);

*double*\

**rint**(*double x*);

*float*\

**rintf**(*float x*);

*long* *double*\

**rintl**(*long double x*);

## DESCRIPTION

The **rint**(), **rintf**(), and **rintl**() functions return the integral value nearest to *x* according to the prevailing rounding mode. These functions raise an inexact exception when the original argument is not an exact integer.

The **nearbyint**(), **nearbyintf**(), and **nearbyintl**() functions perform the same operation, except that they do not raise an inexact exception.

## SEE ALSO

[abs(3)](/abs/3.md), [ceil(3)](/ceil/3.md), [fabs(3)](/fabs/3.md), [fenv(3)](/fenv/3.md), [floor(3)](/floor/3.md), [ieee(3)](/ieee/3.md), [lrint(3)](/lrint/3.md), [lround(3)](/lround/3.md), [math(3)](/math/3.md), [round(3)](/round/3.md)

## STANDARDS

These functions conform to ISO/IEC 9899:1999 (“ISO C99”).

## HISTORY

A **rint**() function appeared in Version 6 AT&T UNIX. The **nearbyint**() and **nearbyintf**() functions appeared in FreeBSD 5.3, and the long double variants were first available in FreeBSD 8.0.
