.\" Copyright (c) 1985, 1991, 1993 .\" The Regents of the University of California. All rights reserved. .\" .\" %sccs.include.redist.man% .\" .\" @(#)rint.3 8.1 (Berkeley) 06/04/93 .\" .Dd .Dt RINT 3 .Os .Sh NAME .Nm rint .Nd and round-to-closest integer functions .Sh SYNOPSIS .Fd #include .Ft double .Fn rint "double x" .Sh DESCRIPTION The .Fn rint function finds the integer (represented as a double precision number) nearest to .Fa x in the direction of the prevailing rounding mode. .Sh NOTES On a .Tn VAX , .Fn rint x is equivalent to adding half to the magnitude and then rounding towards zero. .Pp In the default rounding mode, to nearest, on a machine that conforms to .Tn IEEE 754, .Fn rint x is the integer nearest .Fa x with the additional stipulation that if .Li |rint(x)\-x|=1/2 then .Fn rint x is even. Other rounding modes can make .Fn rint act like .Fn floor , or like .Fn ceil , or round towards zero. .Pp Another way to obtain an integer near .Fa x is to declare (in C) .Bd -literal -offset indent double x;\0\0\0\0 int k;\0\0\0\0k\0=\0x; .Ed .Pp Most C compilers round .Fa x towards 0 to get the integer .Fa k , but some do otherwise. If in doubt, use .Fn floor , .Fn ceil , or .Fn rint first, whichever you intend. Also note that, if x is larger than .Fa k can accommodate, the value of .Fa k and the presence or absence of an integer overflow are hard to predict. .Sh SEE ALSO .Xr abs 3 , .Xr fabs 3 , .Xr ceil 3 , .Xr floor 3 , .Xr ieee 3 , .Xr math 3 .Sh HISTORY A .Fn rint function appeared in .At v6 .