命名空间
变体
操作

islessgreater

来自 cppreference.cn
< c‎ | numeric‎ | math
 
 
 
常用数学函数
函数
基本运算
(C99)
(C99)
(C99)
(C99)(C99)(C99)(C23)
最大值/最小值运算
(C99)
(C99)
指数函数
(C23)
(C99)
(C99)
(C23)
(C23)

(C99)
(C99)(C23)
(C23)
(C23)
幂函数
(C99)
(C23)
(C23)

(C99)
(C23)
(C23)
三角函数和双曲函数
(C23)
(C23)
(C23)
(C23)
(C99)
(C99)
(C99)
最近整数浮点
(C99)(C99)(C99)
(C99)

(C99)(C99)(C99)
(C23)(C23)(C23)(C23)
浮点操作
(C99)(C99)
(C99)(C23)
(C99)
窄化操作
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
量子和量子指数
十进制重编码函数
全序和有效载荷函数
分类
(C99)
(C99)
(C99)
(C23)
(C99)
islessgreater
(C99)
(C23)

误差和伽玛函数
(C99)
(C99)
(C99)
(C99)
类型
宏常量
特殊浮点值
(C99)(C23)
参数和返回值
错误处理
快速运算指示符
 
定义于头文件 <math.h>
#define islessgreater(x, y) /* implementation defined */
(since C99)

确定浮点数 x 是否小于或大于浮点数 y,而不设置浮点异常。

目录

[编辑] 参数

x - 浮点值
y - 浮点值

[编辑] 返回值

如果 x < y || x > y,则为非零整数值,否则为 0

[编辑] 注意

浮点数的内置 operator<operator> 如果其中一个或两个参数为 NaN,则可能引发 FE_INVALID。此函数是表达式 x < y || x > y 的“静默”版本。该宏不会对 x 和 y 求值两次。

[编辑] 示例

#include <math.h>
#include <stdio.h>
 
int main(void)
{
    printf("islessgreater(2.0,1.0)      = %d\n", islessgreater(2.0, 1.0));
    printf("islessgreater(1.0,2.0)      = %d\n", islessgreater(1.0, 2.0));
    printf("islessgreater(1.0,1.0)      = %d\n", islessgreater(1.0, 1.0));
    printf("islessgreater(INFINITY,1.0) = %d\n", islessgreater(INFINITY, 1.0));
    printf("islessgreater(1.0,NAN)      = %d\n", islessgreater(1.0, NAN));
 
    return 0;
}

可能的输出

islessgreater(2.0,1.0)      = 1
islessgreater(1.0,2.0)      = 1
islessgreater(1.0,1.0)      = 0
islessgreater(INFINITY,1.0) = 1
islessgreater(1.0,NAN)      = 0

[编辑] 参考文献

  • C23 标准 (ISO/IEC 9899:2024)
  • 7.12.14.5 islessgreater 宏 (p: TBD)
  • F.10.11 比较宏 (p: TBD)
  • C17 标准 (ISO/IEC 9899:2018)
  • 7.12.14.5 islessgreater 宏 (p: TBD)
  • F.10.11 比较宏 (p: TBD)
  • C11 标准 (ISO/IEC 9899:2011)
  • 7.12.14.5 islessgreater 宏 (p: 261)
  • F.10.11 比较宏 (p: 531)
  • C99 标准 (ISO/IEC 9899:1999)
  • 7.12.14.5 islessgreater 宏 (p: 241-242)

[编辑] 参见

(C99)
检查第一个浮点参数是否小于第二个
(函数宏) [编辑]
检查第一个浮点参数是否大于第二个
(函数宏) [编辑]
C++ 文档 关于 islessgreater