# isgreaterequal

< c‎ | numeric‎ | math

定义于头文件 `<math.h>` |  |
#define isgreaterequal(x, y) /* implementation defined */ |  | (C99 起)

确定浮点数 `x` 是否大于或等于浮点数 `y` ，而不设置浮点异常。

### 参数

x | - | 浮点值
y | - | 浮点值

### 返回值

若 x >= y 则为非零整数值，否则为 ​0​ 。

### 注意

若一或两个参数为 NaN ，则内建的 operator>= 对浮点数可能引发 FE_INVALID 。此宏是 operator>= 的“安静”版本。

### 示例

    #include <stdio.h>
    #include <math.h>

    int main(void)
    {
        printf("isgreaterequal(2.0,1.0)      = %d\n", isgreaterequal(2.0,1.0));
        printf("isgreaterequal(1.0,2.0)      = %d\n", isgreaterequal(1.0,2.0));
        printf("isgreaterequal(1.0,1.0)      = %d\n", isgreaterequal(1.0,1.0));
        printf("isgreaterequal(INFINITY,1.0) = %d\n", isgreaterequal(INFINITY,1.0));
        printf("isgreaterequal(1.0,NAN)      = %d\n", isgreaterequal(1.0,NAN));

        return 0;
    }

可能的输出：

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

### 引用

- C11 标准（ISO/IEC 9899:2011）：

  - 7.12.14.2 The isgreaterequal macro (p: 259-260)

  - F.10.11 Comparison macros (p: 531)

- C99 标准（ISO/IEC 9899:1999）：

  - 7.12.14.2 The isgreaterequal macro (p: 240-241)

### 参阅

islessequal (C99) | 检查第一个浮点参数是否小于或等于第二个 (宏函数)