C
数值 | Numerics

isless

isless

在头文件中定义
#define isless(x, y) /* implementation defined */(since C99)

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

参数

x-浮点值
y-浮点值

返回值

非零整数值x < y,​0​否则。

笔记

如果其中一个或两个参数都是NaN,则operator<可能会引发内置的浮点数FE_INVALID。这个功能是一个“安静”的版本operator<。

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

可能的输出:

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

参考

  • C11标准(ISO / IEC 9899:2011):