xref: /freebsd/lib/msun/man/lround.3 (revision 2aac156d2ea1878d56feaf0db8cd0e8ad02f2245)
12aac156dSDavid Schultz.\" Copyright (c) 2005 David Schultz <das@FreeBSD.org>
22aac156dSDavid Schultz.\" All rights reserved.
32aac156dSDavid Schultz.\"
42aac156dSDavid Schultz.\" Redistribution and use in source and binary forms, with or without
52aac156dSDavid Schultz.\" modification, are permitted provided that the following conditions
62aac156dSDavid Schultz.\" are met:
72aac156dSDavid Schultz.\" 1. Redistributions of source code must retain the above copyright
82aac156dSDavid Schultz.\"    notice, this list of conditions and the following disclaimer.
92aac156dSDavid Schultz.\" 2. Redistributions in binary form must reproduce the above copyright
102aac156dSDavid Schultz.\"    notice, this list of conditions and the following disclaimer in the
112aac156dSDavid Schultz.\"    documentation and/or other materials provided with the distribution.
122aac156dSDavid Schultz.\"
132aac156dSDavid Schultz.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
142aac156dSDavid Schultz.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
152aac156dSDavid Schultz.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
162aac156dSDavid Schultz.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
172aac156dSDavid Schultz.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
182aac156dSDavid Schultz.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
192aac156dSDavid Schultz.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
202aac156dSDavid Schultz.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
212aac156dSDavid Schultz.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
222aac156dSDavid Schultz.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
232aac156dSDavid Schultz.\" SUCH DAMAGE.
242aac156dSDavid Schultz.\"
252aac156dSDavid Schultz.\" $FreeBSD$
262aac156dSDavid Schultz.\"
272aac156dSDavid Schultz.Dd January 11, 2005
282aac156dSDavid Schultz.Dt LROUND 3
292aac156dSDavid Schultz.Os
302aac156dSDavid Schultz.Sh NAME
312aac156dSDavid Schultz.Nm llround ,
322aac156dSDavid Schultz.Nm llroundf ,
332aac156dSDavid Schultz.Nm lround ,
342aac156dSDavid Schultz.Nm lroundf
352aac156dSDavid Schultz.Nd convert to nearest integral value
362aac156dSDavid Schultz.Sh LIBRARY
372aac156dSDavid Schultz.Lb libm
382aac156dSDavid Schultz.Sh SYNOPSIS
392aac156dSDavid Schultz.In math.h
402aac156dSDavid Schultz.Ft long long
412aac156dSDavid Schultz.Fn llround "double x"
422aac156dSDavid Schultz.Ft long long
432aac156dSDavid Schultz.Fn llroundf "float x"
442aac156dSDavid Schultz.Ft long
452aac156dSDavid Schultz.Fn lround "double x"
462aac156dSDavid Schultz.Ft long
472aac156dSDavid Schultz.Fn lroundf "float x"
482aac156dSDavid Schultz.Sh DESCRIPTION
492aac156dSDavid SchultzThe
502aac156dSDavid Schultz.Fn lround
512aac156dSDavid Schultzfunction returns the integer nearest to its argument
522aac156dSDavid Schultz.Fa x ,
532aac156dSDavid Schultzrounding away from zero in halfway cases.
542aac156dSDavid SchultzIf the rounded result is too large to be represented as a
552aac156dSDavid Schultz.Ft long
562aac156dSDavid Schultzvalue, an invalid exception is raised and the return value is undefined.
572aac156dSDavid SchultzOtherwise, if
582aac156dSDavid Schultz.Fa x
592aac156dSDavid Schultzis not an integer,
602aac156dSDavid Schultz.Fn lround
612aac156dSDavid Schultzmay raise an inexact exception.
622aac156dSDavid SchultzWhen the rounded result is representable as a
632aac156dSDavid Schultz.Ft long ,
642aac156dSDavid Schultzthe expression
652aac156dSDavid Schultz.Li lround(x)
662aac156dSDavid Schultzis equivalent to
672aac156dSDavid Schultz.Li (long)round(x)
682aac156dSDavid Schultz(although the former may be more efficient.)
692aac156dSDavid Schultz.Pp
702aac156dSDavid SchultzThe
712aac156dSDavid Schultz.Fn llround ,
722aac156dSDavid Schultz.Fn llroundf ,
732aac156dSDavid Schultzand
742aac156dSDavid Schultz.Fn lroundf
752aac156dSDavid Schultzfunctions differ from
762aac156dSDavid Schultz.Fn lround
772aac156dSDavid Schultzonly in their input and output types.
782aac156dSDavid Schultz.Sh SEE ALSO
792aac156dSDavid Schultz.Xr lrint 3 ,
802aac156dSDavid Schultz.Xr math 3 ,
812aac156dSDavid Schultz.Xr rint 3 ,
822aac156dSDavid Schultz.Xr round 3
832aac156dSDavid Schultz.Sh STANDARDS
842aac156dSDavid SchultzThe
852aac156dSDavid Schultz.Fn llround ,
862aac156dSDavid Schultz.Fn llroundf ,
872aac156dSDavid Schultz.Fn lround ,
882aac156dSDavid Schultzand
892aac156dSDavid Schultz.Fn lroundf
902aac156dSDavid Schultzfunctions conform to
912aac156dSDavid Schultz.St -isoC-99 .
922aac156dSDavid Schultz.Sh HISTORY
932aac156dSDavid SchultzThese routines first appeared in
942aac156dSDavid Schultz.Fx 5.4 .
95