C語言math頭文件(math.h)中ilogb函數的用法及代碼示例。
用法:
int ilogb (double x);
int ilogbf (float x);
int ilogbl (long double x);
整數二進製對數
這是 index 由機器內部使用以表示浮點值x,當它使用重要的之間
1.0
和FLT_RADIX,以便x:x =有效位數* FLT_RADIXexponent
一般來說,FLT_RADIX是
2
,並且此函數返回的值比 index 獲得與frexp(由於不同重要的歸一化為[1.0,2.0)
代替[0.5,1.0)
)。標頭<tgmath.h>提供此函數的type-generic宏版本。
此函數可能會返回兩個特定的宏常量,以指示以下特殊情況:
宏 | 描述 |
---|---|
FP_ILOGB0 | x是零 |
FP_ILOGBNAN | x是NaN |
這些宏常量是在同一標頭中定義的(<cmath>)。
參數
- x
- 值誰博客返回。
返回值
如果x 是正常的,基地FLT_RADIX的對數x。如果x是次正規的,返回的值是對應於規範化表示的值(負數) index )。
如果x為零,則返回FP_LOGB0(一個特殊值,僅由該函數返回,定義為<cmath>)。
如果x是無限的,它會返回INT_MAX。
如果x是NaN,則返回FP_ILOGBNAN(一個特殊值,僅由該函數返回,定義為<cmath>)。
如果結果的大小太大而無法用返回類型的值表示,則該函數返回一個未指定的值,並溢出範圍誤差發生。
的零,無窮或NaN值x可能還會導致域錯誤或溢出範圍誤差。
如果域錯誤發生:
- 和math_errhandling已MATH_ERRNO設置:全局變量errno被設定為EDOM。
- 和math_errhandling已MATH_ERREXCEPT設置:FE_INVALID被拋出
如果溢出範圍誤差發生:
- 和math_errhandling已MATH_ERRNO設置:全局變量errno被設定為ERANGE。
- 和math_errhandling已MATH_ERREXCEPT設置:FE_OVERFLOW被拋出
示例
/* ilogb example */
#include <stdio.h> /* printf */
#include <math.h> /* ilogb */
int main ()
{
double param;
int result;
param = 10.0;
result = ilogb (param);
printf ("ilogb(%f) = %d\n", param, result);
return 0;
}
輸出:
ilogb(10.000000) = 3
|
相關用法
- C語言 cos用法及代碼示例
- C語言 sin用法及代碼示例
- C語言 tan用法及代碼示例
- C語言 acos用法及代碼示例
- C語言 asin用法及代碼示例
- C語言 atan用法及代碼示例
- C語言 atan2用法及代碼示例
- C語言 cosh用法及代碼示例
- C語言 sinh用法及代碼示例
- C語言 tanh用法及代碼示例
- C語言 acosh用法及代碼示例
- C語言 asinh用法及代碼示例
- C語言 atanh用法及代碼示例
- C語言 exp用法及代碼示例
- C語言 frexp用法及代碼示例
- C語言 ldexp用法及代碼示例
- C語言 log用法及代碼示例
- C語言 log10用法及代碼示例
- C語言 modf用法及代碼示例
- C語言 exp2用法及代碼示例
- C語言 expm1用法及代碼示例
- C語言 log1p用法及代碼示例
- C語言 log2用法及代碼示例
- C語言 logb用法及代碼示例
- C語言 scalbn用法及代碼示例
- C語言 scalbln用法及代碼示例
- C語言 pow用法及代碼示例
- C語言 sqrt用法及代碼示例
- C語言 cbrt用法及代碼示例
- C語言 hypot用法及代碼示例
- C語言 erf用法及代碼示例
- C語言 erfc用法及代碼示例
- C語言 tgamma用法及代碼示例
- C語言 lgamma用法及代碼示例
- C語言 ceil用法及代碼示例
- C語言 floor用法及代碼示例
- C語言 fmod用法及代碼示例
- C語言 trunc用法及代碼示例
- C語言 round用法及代碼示例
- C語言 lround用法及代碼示例
- C語言 llround用法及代碼示例
- C語言 rint用法及代碼示例
- C語言 lrint用法及代碼示例
- C語言 llrint用法及代碼示例
- C語言 nearbyint用法及代碼示例
- C語言 remainder用法及代碼示例
- C語言 remquo用法及代碼示例
- C語言 copysign用法及代碼示例
- C語言 nextafter用法及代碼示例
- C語言 nexttoward用法及代碼示例
- C語言 fdim用法及代碼示例
- C語言 fmax用法及代碼示例
- C語言 fmin用法及代碼示例
- C語言 fabs用法及代碼示例
- C語言 abs用法及代碼示例
- C語言 fma用法及代碼示例
- C語言 isfinite用法及代碼示例
- C語言 isgreater用法及代碼示例
- C語言 isgreaterequal用法及代碼示例
- C語言 isless用法及代碼示例
- C語言 islessequal用法及代碼示例
- C語言 islessgreater用法及代碼示例
- C語言 isunordered用法及代碼示例
注:本文由純淨天空篩選整理自C標準庫大神的英文原創作品 C ilogb function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。