fesetround.3m (2010 09)
f
fesetround(3M) fesetround(3M)
NAME
fesetround( ) - set floating-point rounding direction mode
SYNOPSIS
#include <fenv.h>
int fesetround(int round);
DESCRIPTION
The fesetround() function establishes the rounding direction represented by its argument round.
The round argument must equal one of the macros:
FE_TONEAREST, FE_UPWARD, FE_DOWNWARD, and
FE_TOWARDZERO
. If the argument does not match a rounding direction macro, the rounding direction is
not changed.
The default rounding direction mode is round to nearest (
FE_TONEAREST).
USAGE
To use this function, compile either with the default
-Ae option or with the -Aa and -D_HPUX_SOURCE
options. Make sure your program includes <fenv.h>.
For HP Integrity servers, specify
+Ofenvaccess on the compiler command line or place the call to this
function under the effect of an affirmative
FENV_ACCESS pragma:
#pragma STDC FENV_ACCESS ON
If the FENV_ACCESS pragma is placed outside of any top-level declarations in a file, the pragma will
apply to all declarations in the compilation following the pragma until another FENV_ACCESS pragma
is encountered or until the end of the file is reached.
If the
FENV_ACCESS pragma is placed at the beginning of a block (compound statement), the pragma
will apply until another FENV_ACCESS pragma is encountered or until the end of the block is reached.
For PA-RISC, you might need to use the
+Onomoveflops compiler option in order to prevent optimiza-
tions that can undermine the specified behavior of this function.
Link in the math library by specifying
-lm on the compiler or linker command line.
For more information, see the HP-UX floating-point guide for HP Integrity servers at the following site:
http://www.hp.com/go/fp
.
RETURN VALUE
The
fesetround() function returns a zero value if and only if the argument is equal to a rounding
direction macro.
ERRORS
No errors are defined.
EXAMPLES
Save, set, and restore the rounding direction.
#include <fenv.h>
/*...*/
{
int save_round;
save_round = fegetround();
fesetround(FE_UPWARD);
/*...*/
fesetround(save_round);
/*...*/
}
SEE ALSO
fegetround(3M), fenv(5).
STANDARDS CONFORMANCE
fesetround() : ISO/IEC C99 (including Annex F, "IEC 60559 floating-point arithmetic")
HP-UX 11i Version 3: September 2010 − 1 − Hewlett-Packard Company 1