C 库 - fesetenv() 函数
C fenv 库中的 fesetenv() 函数用于声明包含舍入或控制模式的浮点环境。该函数在很多需要修改浮点值的场景中非常有用。
语法
以下是 fesetenv() 函数的 C 库语法。
fesetenv(const fenv_t *envp);
参数
此函数仅接受一个参数 -
- fenv_t:它接受一个指向 fenv_t 对象的指针,该对象包含要恢复的状态。
返回值
此函数返回一个整数值 -
如果程序正常运行,则返回零。
如果无法设置环境,则返回非零值。
示例 1
以下是 C 库函数,用于查看 fesetenv() 函数的演示。
#include <stdio.h> #include <fenv.h> int main() { fenv_t env; fegetenv(&env); // 在此处执行一些浮点运算 fesetenv(&env); // 恢复已保存的环境 printf("Environment restored."); return 0; }
输出
上述代码产生以下结果 -
Environment restored.
示例 2
以下程序演示了使用 FE_DFL_ENV 的浮点环境的默认行为。
#include <stdio.h> #include <fenv.h> int main() { // 设置默认环境,清除所有异常 fesetenv(FE_DFL_ENV); printf("Default environment set, all exceptions cleared."); return 0; }
输出
执行上述代码后,我们得到以下结果 -
Default environment set, all exceptions cleared.