c语言FLT_MAX_EXP什么意思,expf - [ C语言中文开发手册 ] - 在线原生手册 - php中文网...

这篇博客详细介绍了C语言中用于计算e的指数的函数,包括expf, exp, expl以及类型通用宏exp。文章通过示例展示了如何使用这些函数处理不同类型的浮点数,并讨论了它们在遇到特殊值如0、无穷大和NaN时的行为。此外,还提及了错误处理和溢出情况。
摘要由CSDN通过智能技术生成

在头文件中定义float expf(float arg);(1)(自C99以来)

double exp(double arg);(2)

long double expl(long double arg);(3)(自C99以来)

在头文件中定义

#define exp(arg)(4)(自C99以来)

1-3)计算给定的功率参数e(欧拉数,2.7182818)。

4)类型 - 泛型宏:如果arg的类型为long double,则调用expl。 否则,如果arg具有整数类型或类型double,则调用exp。 否则,调用expf。 如果arg是复数或虚数,那么宏调用相应的复数函数(cexpf,cexp,cexpl)。

参数

arg-floating point value

返回值

如果没有错误发生,arg的基e指数(earg

)被返回。

如果发生由溢出引起的范围错误,则返回+ HUGE_VAL,+ HUGE_VALF或+ HUGE_VALL。

如果由于下溢而发生范围错误,则返回正确的结果(舍入后)。

错误处理

按照math_errhandling中的指定报告错误。

如果实现支持IEEE浮点运算(IEC 60559),

如果参数是±0,则返回1

如果参数是-∞,则返回+0

如果参数是+∞,则返回+∞

如果参数是NaN,则返回NaN

注意

对于兼容IEEE的类型,如果709.8

#include #include #include #include #include #pragma STDC FENV_ACCESS ON

int main(void){    printf("exp(1) = %f\n", exp(1));    printf("FV of $100, continuously compounded at 3%% for 1 year = %f\n",            100*exp(0.03));    // special values    printf("exp(-0) = %f\n", exp(-0.0));    printf("exp(-Inf) = %f\n", exp(-INFINITY));    //error handling

errno = 0; feclearexcept(FE_ALL_EXCEPT);    printf("exp(710) = %f\n", exp(710));    if(errno == ERANGE) perror("    errno == ERANGE");    if(fetestexcept(FE_OVERFLOW)) puts("    FE_OVERFLOW raised");}

可能的输出:

exp(1) = 2.718282FV of $100, continuously compounded at 3% for 1 year = 103.045453exp(-0) = 1.000000exp(-Inf) = 0.000000exp(710) = inf

errno == ERANGE: Numerical result out of range

FE_OVERFLOW raised

参考

C11标准(ISO / IEC 9899:2011):7.12.6.1 exp函数(p:242)

7.25类型通用数学(p:373-375)

F.10.3.1 exp函数(p:520)

C99标准(ISO / IEC 9899:1999):7.12.6.1 exp函数(p:223)

7.22类型通用数学(p:335-337)

F.9.3.1 exp函数(p:458)

C89 / C90标准(ISO / IEC 9899:1990):4.5.4.1 exp函数

扩展内容

exp2exp2fexp2l(C99)(C99)(C99)计算2提高到给定的倍率(2x)(功能)expper1expm1fexpm1l(C99)(C99)(C99)计算e增加到给定的倍率,减去一(ex-1)(函数)

loglogflogl(C99)(C99)计算自然(base-e)对数(ln(x))(函数)

cexpcexpfcexpl(C99)(C99)(C99)计算复数基-e指数(函数)

| 用于exp的C ++文档 |

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值