isfinite
來自 cppreference.com
定義於標頭檔案 <math.h> |
||
#define isfinite(arg) /* implementation defined */ |
(C99 起) | |
確定給定浮點數 arg 是否具有有限值,即它不是無窮大或 NaN,而是正常、次正常或零。該宏返回一個整數值。
FLT_EVAL_METHOD 被忽略:即使引數以比其型別更多的範圍和精度進行評估,它也首先被轉換為其語義型別,並且分類基於此。
目錄 |
[編輯] 引數
arg | - | 浮點值 |
[編輯] 返回值
如果 arg 具有有限值,則返回非零整數值,否則返回 0。
[編輯] 示例
執行此程式碼
#include <float.h> #include <math.h> #include <stdio.h> int main(void) { printf("isfinite(NAN) = %d\n", isfinite(NAN)); printf("isfinite(INFINITY) = %d\n", isfinite(INFINITY)); printf("isfinite(0.0) = %d\n", isfinite(0.0)); printf("isfinite(DBL_MIN/2.0) = %d\n", isfinite(DBL_MIN / 2.0)); printf("isfinite(1.0) = %d\n", isfinite(1.0)); printf("isfinite(exp(800)) = %d\n", isfinite(exp(800))); }
可能的輸出
isfinite(NAN) = 0 isfinite(INFINITY) = 0 isfinite(0.0) = 1 isfinite(DBL_MIN/2.0) = 1 isfinite(1.0) = 1 isfinite(exp(800)) = 0
[編輯] 參考
- C23 標準 (ISO/IEC 9899:2024)
- 7.12.3.2 isfinite 宏 (p: TBD)
- C17 標準 (ISO/IEC 9899:2018)
- 7.12.3.2 isfinite 宏 (p: TBD)
- C11 標準 (ISO/IEC 9899:2011)
- 7.12.3.2 isfinite 宏 (p: 236)
- C99 標準 (ISO/IEC 9899:1999)
- 7.12.3.2 isfinite 宏 (p: 216-217)
[編輯] 另請參閱
(C99) |
對給定浮點值進行分類 (函式宏) |
(C99) |
檢查給定數字是否為無窮大 (函式宏) |
(C99) |
檢查給定數字是否為 NaN (函式宏) |
(C99) |
檢查給定數字是否為正常數 (函式宏) |
C++ 文件 for isfinite
|