當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。