名稱空間
變體
操作

cexpf, cexp, cexpl

來自 cppreference.com
< c‎ | 數值‎ | 複數
定義在標頭檔案 <complex.h>
float complex       cexpf( float complex z );
(1) (C99 起)
double complex      cexp( double complex z );
(2) (C99 起)
long double complex cexpl( long double complex z );
(3) (C99 起)
定義於標頭檔案 <tgmath.h>
#define exp( z )
(4) (C99 起)
1-3) 計算 z 的以 e 為底的復指數函式。
4) 型別泛型宏:如果 z 的型別為 long double complex,則呼叫 cexpl。如果 z 的型別為 double complex,則呼叫 cexp。如果 z 的型別為 float complex,則呼叫 cexpf。如果 z 為實數或整數,則宏呼叫相應的實數函式(expfexpexpl)。如果 z 為虛數,則呼叫相應的複數引數版本。

目錄

[編輯] 引數

z - 複數引數

[編輯] 返回值

如果未發生錯誤,則返回 ze 次冪,ez

[編輯] 錯誤處理和特殊值

錯誤報告與 math_errhandling 一致。

如果實現支援 IEEE 浮點算術,

  • cexp(conj(z)) == conj(cexp(z))
  • 如果 z±0+0i,則結果為 1+0i
  • 如果 zx+∞i(對於任何有限 x),則結果為 NaN+NaNi 並引發 FE_INVALID
  • 如果 zx+NaNi(對於任何有限 x),則結果為 NaN+NaNi 並可能引發 FE_INVALID
  • 如果 z+∞+0i,結果為 +∞+0i
  • 如果 z-∞+yi(對於任何有限 y),則結果為 +0cis(y)
  • 如果 z+∞+yi(對於任何有限非零 y),則結果為 +∞cis(y)
  • 如果 z-∞+∞i,則結果為 ±0±0i(符號未指定)
  • 如果 z+∞+∞i,則結果為 ±∞+NaNi 並引發 FE_INVALID(實部符號未指定)
  • 如果 z-∞+NaNi,則結果為 ±0±0i(符號未指定)
  • 如果 z+∞+NaNi,則結果為 ±∞+NaNi(實部符號未指定)
  • 如果 zNaN+0i,結果是 NaN+0i
  • 如果 zNaN+yi(對於任何非零 y),則結果為 NaN+NaNi 並可能引發 FE_INVALID
  • zNaN+NaNi,則結果為 NaN+NaNi

其中 cis(y)cos(y) + i sin(y)

[編輯] 注意

復指數函式 ez
對於 z = x+iy 等於 ex
cis(y)
,或 ex
(cos(y) + i sin(y))

指數函式在複平面中是一個“整函式”,沒有分支割線。

[編輯] 示例

#include <stdio.h>
#include <math.h>
#include <complex.h>
 
int main(void)
{
    double PI = acos(-1);
    double complex z = cexp(I * PI); // Euler's formula
    printf("exp(i*pi) = %.1f%+.1fi\n", creal(z), cimag(z));
 
}

輸出

exp(i*pi) = -1.0+0.0i

[編輯] 參考

  • C11 標準 (ISO/IEC 9899:2011)
  • 7.3.7.1 cexp 函式 (p: 194)
  • 7.25 型別通用數學 <tgmath.h> (p: 373-375)
  • G.6.3.1 cexp 函式 (p: 543)
  • G.7 型別通用數學 <tgmath.h> (p: 545)
  • C99 標準 (ISO/IEC 9899:1999)
  • 7.3.7.1 cexp 函式 (p: 176)
  • 7.22 型別通用數學 <tgmath.h> (p: 335-337)
  • G.6.3.1 cexp 函式 (p: 478)
  • G.7 型別通用數學 <tgmath.h> (p: 480)

[編輯] 另請參閱

(C99)(C99)(C99)
計算複數自然對數
(函式) [編輯]
(C99)(C99)
計算 e 的給定冪 (ex)
(函式) [編輯]
C++ 文件 用於 exp