cexpf, cexp, cexpl
来自cppreference.com
| 在标头 <complex.h> 定义
|
||
| (1) | (C99 起) | |
| (2) | (C99 起) | |
| (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 是实浮点数或整数,则该宏调用对应的实函数( expf、 exp 、 expl )。若 z 是虚数,则调用对应的复参数版本。参数
| z | - | 复参数 |
返回值
若不出现错误,则返回 e 的 z 次幂, ez
。
错误处理及特殊值
报告的错误与 math_errhandling 一致。
若实现支持IEEE浮点算术,则
- cexp(conj(z)) == conj(cexp(z))
- 若
z为±0+0i,则结果是1+0i; - 若
z为x+∞i(对于任何有限 x),则结果是NaN+NaNi并引发 FE_INVALID ; - 若
z为x+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(实部符号未指定); - 若
z为NaN+0i,则结果是NaN+0i; - 若
z为NaN+yi(对于任意非零 y ),则结果是NaN+NaNi并可能引发 FE_INVALID ; - 若
z为NaN+NaNi,则结果是NaN+NaNi;
其中 cis(y) 为 cos(y) + i sin(y) 。
注解
对于 z = x+iy ,复指数函数 ez
等于 ex
cis(y) ,或 ex
(cos(y) + i sin(y)) 。
指数函数在复平面上是整函数且无分支切割。
示例
运行此代码
输出:
exp(i*pi) = -1.0+0.0i
引用
- C11 标准(ISO/IEC 9899:2011):
- 7.3.7.1 The cexp functions (第 194 页)
- 7.25 Type-generic math <tgmath.h> (第 373-375 页)
- G.6.3.1 The cexp functions (第 543 页)
- G.7 Type-generic math <tgmath.h> (第 545 页)
- C99 标准(ISO/IEC 9899:1999):
- 7.3.7.1 The cexp functions (第 176 页)
- 7.22 Type-generic math <tgmath.h> (第 335-337 页)
- G.6.3.1 The cexp functions (第 478 页)
- G.7 Type-generic math <tgmath.h> (第 480 页)
参阅
| (C99)(C99)(C99) |
计算复数的自然对数 (函数) |
| (C99)(C99) |
计算 e 的给定次幂 ( ex ) (函数) |