---
name: "llroundf"
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/llround"
---

# llroundf(3)

convert to nearest integral value

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

## NAME

**llround**, **llroundf**, **llroundl**, **lround**, **lroundf**, **lroundl** – convert to nearest integral value

## LIBRARY

Math Library (libm, -lm)

## SYNOPSIS

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

*long long*\

**llround**(*double x*);

*long long*\

**llroundf**(*float x*);

*long long*\

**llroundl**(*long double x*);

*long*\

**lround**(*double x*);

*long*\

**lroundf**(*float x*);

*long*\

**lroundl**(*long double x*);

## DESCRIPTION

The **lround**() function returns the integer nearest to its argument *x*, rounding away from zero in halfway cases. If the rounded result is too large to be represented as a *long* value, an invalid exception is raised and the return value is undefined. Otherwise, if *x* is not an integer, **lround**() may raise an inexact exception. When the rounded result is representable as a *long*, the expression **lround**(*x*) is equivalent to (*long*)**round**(*x*) (although the former may be more efficient).

The **llround**(), **llroundf**(), **llroundl**(), **lroundf**() and **lroundl**() functions differ from **lround**() only in their input and output types.

## SEE ALSO

[lrint(3)](/lrint/3.md), [math(3)](/math/3.md), [rint(3)](/rint/3.md), [round(3)](/round/3.md)

## STANDARDS

The **llround**(), **llroundf**(), **llroundl**(), **lround**(), **lroundf**(), and **lroundl**() functions conform to ISO/IEC 9899:1999 (“ISO C99”).

## HISTORY

The *float* and *double* versions of these routines first appeared in FreeBSD 5.4. The *long double* versions appeared in FreeBSD 6.0.
