C
数值 | Numerics

isgreater

isgreater

在头文件中定义
#define isgreater(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("isgreater(2.0,1.0) = %d\n", isgreater(2.0,1.0) printf("isgreater(1.0,2.0) = %d\n", isgreater(1.0,2.0) printf("isgreater(INFINITY,1.0) = %d\n", isgreater(INFINITY,1.0) printf("isgreater(1.0,NAN) = %d\n", isgreater(1.0,NAN) return 0; }

可能的输出:

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

参考

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