long lrint(double __x)
The lrint() function rounds __x to the nearest integer, rounding the halfway cases to the even integer direction. (That is both 1.5 and 2.5 values are rounded to 2). This function is similar to rint() function, but it differs in type of return value and in that an overflow is possible.
The rounded long integer value. If __x is not a finite number or an overflow was, this realization returns the LONG_MIN
value (0x80000000).