FEGETROUND(3)

NAME
fegetround, fesetround - control floating-point rounding direction modes

SYNOPSIS
#include <fenv.h>
int
fegetround(void);
int
fesetround(int round);

DESCRIPTION
These functions provide control of floating-point rounding direction modes. The round input argument is a value specifying a rounding direction mode and containing any of the values listed below.

FE_TONEAREST
    Results are rounded to the closest representable value. If the exact result is exactly half way between two representable values, the value whose last binary digit is even (zero) is chosen. This is the default mode.

FE_DOWNWARD
    Results are rounded towards negative .

FE_UPWARD
    Results are rounded towards positive .

FE_TOWARDZERO
    Results are rounded towards zero.

The fegetround() function gets the current rounding direction.

The fesetround() function establishes the rounding direction represented by round. If the argument is not equal to the value of a rounding direction macro, the rounding direction is not changed.

RETURN VALUES
The fegetround() function returns the current rounding direction. The fesetround() function return zero on success, and non-zero if an error occurred.

SEE ALSO
feclearexcept(3), feenableexcept(3), fegetenv(3)

STANDARDS
The fegetround() and fesetround() functions conform to isoC-99.

HISTORY
These functions first appeared in OpenBSD 5.0.