当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C语言 fesetround用法及代码示例


C语言fenv头文件(fenv.h)中fesetround函数的用法及代码示例。

用法:

int fesetround (int rdir);
设置舍入方向模式
rdir作为当前取整方向模式为了浮点环境

调用此函数的程序应确保编译指示FENV_ACCESS已启用该调用。

参数

rdir
定义为的值之一取整方向模式
宏值描述
FE_DOWNWARD向下舍入。
FE_TONEAREST四舍五入到最接近的值。
FE_TOWARDZERO向零舍入。
FE_UPWARD向上舍入。
某些库实现可能支持其他浮点舍入方向值(其对应的宏也以FE_)。
如果int传递了这些宏定义的值以外的值,该函数不会更改取整方向模式并返回一个非零值。

返回值

如果成功设置了请求的舍入方向,则为零。
否则为非零值。

示例

/* fesetround example */
#include <stdio.h>      /* printf */
#include <fenv.h>       /* fesetround, FE_* */
#include <math.h>       /* rint */
#pragma STDC FENV_ACCESS on

int main ()
{
  printf ("rounding -3.8:\n");

  fesetround(FE_DOWNWARD);
  printf ("FE_DOWNWARD: %.1f\n", rint(-3.8));

  fesetround(FE_TONEAREST);
  printf ("FE_TONEAREST: %.1f\n", rint(-3.8));

  fesetround(FE_TOWARDZERO);
  printf ("FE_TOWARDZERO: %.1f\n", rint(-3.8));

  fesetround(FE_UPWARD);
  printf ("FE_UPWARD: %.1f\n", rint(-3.8));
  return 0;
}


可能的输出:

rounding -3.8:
FE_DOWNWARD: -4.0
FE_TONEAREST: -4.0
FE_TOWARDZERO: -3.0
FE_UPWARD: -3.0



相关用法


注:本文由纯净天空筛选整理自C标准库大神的英文原创作品 C fesetround function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。