cexp10
计算复数以10为底数的指数值。
接口定义
C interface:
float complex cexp10f(float complex x);
double complex cexp10(double complex x);
参数
| 参数名 | 类型 | 描述 | 输入/输出 | 
|---|---|---|---|
| x | 
 
 | 表示输入数据的浮点值。 | 输入 | 
返回值
- 返回x的以10为底的指数值结果y。
- 特殊值说明如下。
输入值实部(x.real) 输入值虚部(x.imag) 输出值实部(y.real) 输出值虚部(y.imag) +0 +0 +1 +0 +0 -0 +1 -0 +0 inf nan nan +0 -inf nan nan +0 snan nan nan +0 -snan nan nan +0 qnan nan nan +0 -qnan nan nan -0 +0 +1 +0 -0 -0 +1 -0 -0 inf nan nan -0 -inf nan nan -0 snan nan nan -0 -snan nan nan -0 qnan nan nan -0 -qnan nan nan inf +0 inf +0 inf -0 inf -0 inf inf inf nan inf -inf inf nan inf snan inf nan inf -snan inf nan inf qnan inf nan inf -qnan inf nan -inf +0 +0 +0 -inf -0 +0 -0 -inf inf +0 +0 -inf -inf +0 +0 -inf snan +0 +0 -inf -snan +0 +0 -inf qnan +0 +0 -inf -qnan +0 +0 snan +0 nan +0 snan -0 nan -0 snan inf nan nan snan -inf nan nan snan snan nan nan snan -snan nan nan snan qnan nan nan snan -qnan nan nan -snan +0 nan +0 -snan -0 nan -0 -snan inf nan nan -snan -inf nan nan -snan snan nan nan -snan -snan nan nan -snan qnan nan nan -snan -qnan nan nan qnan +0 nan +0 qnan -0 nan -0 qnan inf nan nan qnan -inf nan nan qnan snan nan nan qnan -snan nan nan qnan qnan nan nan qnan -qnan nan nan -qnan +0 nan +0 -qnan -0 nan -0 -qnan inf nan nan -qnan -inf nan nan -qnan snan nan nan -qnan -snan nan nan -qnan qnan nan nan -qnan -qnan nan nan 
依赖
C: "kc.h"
示例
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | // typical usage double x1 = INFINITY, y1 = INFINITY; double x2 = 2.0, y2 = 3.0; double x3 = -2.5, y3 = -3.4; double x4 = NAN, y4 = NAN; double x5 = 0, y5 = 0; double complex z1 = cexp10(__builtin_complex(x1, y1)); double complex z2 = cexp10(__builtin_complex(x2, y2)); double complex z3 = cexp10(__builtin_complex(x3, y3)); double complex z4 = cexp10(__builtin_complex(x4, y4)); double complex z5 = cexp10(__builtin_complex(x5, y5)); // print result printf("/*\n"); printf(" * cexp10(%.2f + %.2f*I) = %.6f + %.6f*I\n", x1, y1, __real__(z1), __imag__(z1)); printf(" * cexp10(%.2f + %.2f*I) = %.6f + %.6f*I\n", x2, y2, __real__(z2), __imag__(z2)); printf(" * cexp10(%.2f + %.2f*I) = %.6f + %.6f*I\n", x3, y3, __real__(z3), __imag__(z3)); printf(" * cexp10(%.2f + %.2f*I) = %.6f + %.6f*I\n", x4, y4, __real__(z4), __imag__(z4)); printf(" * cexp10(%.2f + %.2f*I) = %.6f + %.6f*I\n", x5, y5, __real__(z5), __imag__(z5)); /* * cexp10(inf + inf*I) = inf + nan*I * cexp10(2.00 + 3.00*I) = 81.121465 + 58.474848*I * cexp10(-2.50 + -3.40*I) = 0.000080 + -0.003161*I * cexp10(nan + nan*I) = nan + nan*I * cexp10(0.00 + 0.00*I) = 1.000000 + 0.000000*I **/ |