名稱空間
變體
操作

cbrt, cbrtf, cbrtl

來自 cppreference.com
< c‎ | 數值‎ | 數學
 
 
 
常用數學函式
函式
基本操作
(C99)
(C99)
(C99)
(C99)(C99)(C99)(C23)
最大值/最小值操作
(C99)
(C99)
指數函式
(C23)
(C99)
(C99)
(C23)
(C23)

(C99)
(C99)(C23)
(C23)
(C23)
冪函式
cbrt
(C99)
(C23)
(C23)

(C99)
(C23)
(C23)
三角函式和雙曲函式
(C23)
(C23)
(C23)
(C23)
(C99)
(C99)
(C99)
最近整數浮點數
(C99)(C99)(C99)
(C99)

(C99)(C99)(C99)
(C23)(C23)(C23)(C23)
浮點數操作
(C99)(C99)
(C99)(C23)
(C99)
窄化操作
(C23)
(C23)
(C23)
(C23)
(C23)
(C23)
量子與量子指數
十進位制重新編碼函式
總序和載荷函式
分類
(C99)
(C99)
(C99)
(C23)
誤差函式和伽馬函式
(C99)
(C99)
(C99)
(C99)
型別
宏常量
特殊浮點值
(C99)(C23)
引數和返回值
錯誤處理
快速操作指示符
 
定義於標頭檔案 <math.h>
float       cbrtf( float arg );
(1) (C99 起)
double      cbrt( double arg );
(2) (C99 起)
long double cbrtl( long double arg );
(3) (C99 起)
定義於標頭檔案 <tgmath.h>
#define cbrt( arg )
(4) (C99 起)
1-3) 計算 arg 的立方根。
4) 型別通用宏:如果 arg 的型別是 long double,則呼叫 cbrtl。否則,如果 arg 的型別是整數型別或 double,則呼叫 cbrt。否則,呼叫 cbrtf

目錄

[編輯] 引數

arg - 浮點值

[編輯] 返回值

如果沒有錯誤發生,返回 arg 的立方根(3arg)。

如果因下溢發生範圍錯誤,則返回正確結果(舍入後)。

[編輯] 錯誤處理

錯誤報告按照 math_errhandling 中指定的方式。

如果實現支援 IEEE 浮點運算 (IEC 60559),

  • 如果引數是 ±0 或 ±∞,則原樣返回。
  • 如果引數為 NaN,則返回 NaN。

[編輯] 注意

cbrt(arg) 不等同於 pow(arg, 1.0/3),因為有理數
1
3
通常不等於 1.0/3,並且 std::pow 不能將負數作為底數,分數作為指數。此外,cbrt(arg) 通常比 pow(arg, 1.0/3) 提供更精確的結果(參見示例)。

[編輯] 示例

#include <float.h>
#include <math.h>
#include <stdio.h>
 
int main(void)
{
    printf("Normal use:\n"
           "cbrt(729)      = %f\n", cbrt(729));
    printf("cbrt(-0.125)   = %f\n", cbrt(-0.125));
    printf("Special values:\n"
           "cbrt(-0)       = %f\n", cbrt(-0.0));
    printf("cbrt(+inf)     = %f\n", cbrt(INFINITY));
    printf("Accuracy:\n"
           "cbrt(343)      = %.*f\n", DBL_DECIMAL_DIG, cbrt(343));
    printf("pow(343,1.0/3) = %.*f\n", DBL_DECIMAL_DIG, pow(343, 1.0/3));
}

可能的輸出

Normal use:
cbrt(729)      = 9.000000
cbrt(-0.125)   = -0.500000
Special values:
cbrt(-0)       = -0.000000
cbrt(+inf)     = inf
Accuracy:
cbrt(343)      = 7.00000000000000000
pow(343,1.0/3) = 6.99999999999999911

[編輯] 參考

  • C23 標準 (ISO/IEC 9899:2024)
  • 7.12.7.1 cbrt 函式 (p: TBD)
  • 7.25 型別通用數學 <tgmath.h> (p: TBD)
  • F.10.4.1 cbrt 函式 (p: TBD)
  • C17 標準 (ISO/IEC 9899:2018)
  • 7.12.7.1 cbrt 函式 (p: 180-181)
  • 7.25 型別通用數學 <tgmath.h> (p: 272-273)
  • F.10.4.1 cbrt 函式 (p: 381-)
  • C11 標準 (ISO/IEC 9899:2011)
  • 7.12.7.1 cbrt 函式 (p: 247)
  • 7.25 型別通用數學 <tgmath.h> (p: 373-375)
  • F.10.4.1 cbrt 函式 (p: 524)
  • C99 標準 (ISO/IEC 9899:1999)
  • 7.12.7.1 cbrt 函式 (p: 228)
  • 7.22 型別通用數學 <tgmath.h> (p: 335-337)
  • F.9.4.1 cbrt 函式 (p: 460)

[編輯] 另請參閱

(C99)(C99)
計算給定冪的數字 (xy)
(function) [編輯]
(C99)(C99)
計算平方根 (x)
(function) [編輯]
(C99)(C99)(C99)
計算兩個給定數的平方和的平方根(x2
+y2

(function) [編輯]
C++ 文件,關於 cbrt