侧边栏壁纸
博主头像
noerror

虚灵不寐,众理具而万事出。

  • 累计撰写 239 篇文章
  • 累计创建 9 个标签
  • 累计收到 2 条评论
标签搜索

目 录CONTENT

文章目录

fpclassify函数用法详解

noerror
2022-10-04 / 0 评论 / 0 点赞 / 142 阅读 / 430 字 / 正在检测是否收录...

fpclassify函数用法详解

fpclassify函数简介

  • 头文件包含
#include <math.h>
  • 函数定义
int fpclassify( x );
int isfinite( x );
int isnormal( x );
int isnan( x );
int isinf( x );
  • 编译链接选项
-lm

fpclassify函数常见使用错误

  • 链接错误
    undefined reference to `fpclassify'
    解决办法:添加链接选项
-lm
  • 编译错误
    warning: implicit declaration of function ‘fpclassify’ [-Wimplicit-function-declaration]
    解决办法:包含头文件
#include <math.h>

fpclassify函数详细描述

浮点数可以有特殊的值,如无限或NaN。使用宏。bi fpclassify(x),您可以找到x是什么类型。宏以任何浮点表达式作为参数。结果是以下值之一:

  • FP_NAN x“不是数字”。
  • FP_INFINITE x要么是正无穷大,要么是负无穷大。
  • FP_ZERO x为零。
  • FP_SUBNORMAL x太小,无法用规范化格式表示。
  • 如果上面没有一个是正确的,那么它一定是一个普通的浮点数。

其他宏提供了一些标准问题的简短答案。

  • 如果。br(fpclassify(x)!=FP_NAN&&fpclassify(x)!=FP_INFINITE),则.bi isfinition(x)返回一个非零值
  • .如果(fpclassify(x)==FP_NORMAL),则bi isnormal(x)返回一个非零值
  • .如果(fpclassify(x)==FP_NAN),则bi isnan(x)返回一个非零值
  • .如果x是正无穷大,则bi isinf(x)返回1,如果x是负无穷大,则返回-1。

fpclassify函数其他说明

在glibc2.01及更早版本中,如果x是正无穷大或负无穷大,则isinf ()返回一个非零值(实际上是:1)。(这就是C99所需要的全部。)

0

评论区