⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 libm_error.c

📁 glibc 2.9,最新版的C语言库函数
💻 C
📖 第 1 页 / 共 5 页
字号:
    {       RETVAL_ZEROL; ERRNO_RANGE; break;    }  case pow_underflow:  case annuity_underflow:  case compound_underflow:    /* pow(x,y) underflow */    {       RETVAL_ZEROD; ERRNO_RANGE; break;    }  case powf_underflow:  case annuityf_underflow:  case compoundf_underflow:    /* powf(x,y) underflow */    {       RETVAL_ZEROF; ERRNO_RANGE; break;    }  case annuityl_by_zero:  case annuityl_less_m1:  case compoundl_by_zero:  case compoundl_less_m1:  case annuity_by_zero:  case annuity_less_m1:  case compound_by_zero:  case compound_less_m1:  case annuityf_by_zero:  case annuityf_less_m1:  case compoundf_by_zero:  case compoundf_less_m1:    {       ERRNO_DOMAIN; break;    }  case powl_zero_to_negative:    /* 0**neg */    {       ERRNO_DOMAIN; break;    }  case pow_zero_to_negative:    /* 0**neg */    {       ERRNO_DOMAIN; break;    }  case  powf_zero_to_negative:    /* 0**neg */    {       ERRNO_DOMAIN; break;    }  case powl_neg_to_non_integer:    /* neg**non_integral */    {       ERRNO_DOMAIN; break;    }  case pow_neg_to_non_integer:    /* neg**non_integral */    {       ERRNO_DOMAIN; break;    }  case  powf_neg_to_non_integer:    /* neg**non-integral */    {       ERRNO_DOMAIN; break;    }  case  powl_nan_to_zero:    /* powl(NaN,0.0) */    /* Special Error */    {       break;    }  case  pow_nan_to_zero:    /* pow(NaN,0.0) */    {       break;    }  case  powf_nan_to_zero:    /* powf(NaN,0.0) */    {       break;    }  case atan2l_zero:  case atan2dl_zero:    /* atan2l(0,0) */    /* atan2dl(0,0) */    {       break;    }  case atan2_zero:  case atan2d_zero:    /* atan2(0,0) */    /* atan2d(0,0) */    {       break;    }  case atan2f_zero:  case atan2df_zero:    /* atan2f(0,0) */    /* atan2df(0,0) */    {       break;    }  case expm1l_overflow:    /* expm1 overflow */    {       ERRNO_RANGE; break;    }  case expm1_overflow:    /* expm1 overflow */    {       ERRNO_RANGE; break;    }  case expm1f_overflow:    /* expm1f overflow */    {       ERRNO_RANGE; break;    }  case expm1l_underflow:    /* expm1 underflow */    {       ERRNO_RANGE; break;    }  case expm1_underflow:    /* expm1 underflow */    {       ERRNO_RANGE; break;    }  case expm1f_underflow:    /* expm1f underflow */    {       ERRNO_RANGE; break;    }  case hypotl_overflow:    /* hypotl overflow */    {       RETVAL_HUGE_VALL; ERRNO_RANGE; break;    }  case hypot_overflow:    /* hypot overflow */    {       RETVAL_HUGE_VALD; ERRNO_RANGE; break;    }  case hypotf_overflow:    /* hypotf overflow */    {       RETVAL_HUGE_VALF; ERRNO_RANGE; break;    }  case scalbl_underflow:    /* scalbl underflow */    {       if (INPUT_XL < ZEROL_VALUE /*0*/) RETVAL_NEG_ZEROL;       else RETVAL_ZEROL;       ERRNO_RANGE; break;    }  case scalb_underflow:    /* scalb underflow */    {       if (INPUT_XD < ZEROD_VALUE /*0*/) RETVAL_NEG_ZEROD;       else RETVAL_ZEROD;       ERRNO_RANGE; break;    }  case scalbf_underflow:    /* scalbf underflow */    {       if (INPUT_XF < ZEROF_VALUE /*0*/) RETVAL_NEG_ZEROF;       else RETVAL_ZEROF;       ERRNO_RANGE; break;    }  case scalbl_overflow:    /* scalbl overflow */    {       if (INPUT_XL < ZEROL_VALUE /*0*/) RETVAL_NEG_HUGE_VALL;       else RETVAL_HUGE_VALL;       ERRNO_RANGE; break;    }  case scalb_overflow:    /* scalb overflow */    {       if (INPUT_XD < ZEROD_VALUE /*0*/) RETVAL_NEG_HUGE_VALD;       else RETVAL_HUGE_VALD;       ERRNO_RANGE; break;    }  case scalbf_overflow:    /* scalbf overflow */    {       if (INPUT_XF < ZEROF_VALUE /*0*/) RETVAL_NEG_HUGE_VALF;       else RETVAL_HUGE_VALF;       ERRNO_RANGE; break;    }  case acoshl_lt_one:    /* acoshl(x < 1) */    {       ERRNO_DOMAIN; break;    }  case acosh_lt_one:    /* acosh(x < 1) */    {       ERRNO_DOMAIN; break;    }  case acoshf_lt_one:    /* acoshf(x < 1) */    {        ERRNO_DOMAIN; break;    }  case acosl_gt_one:  case acosdl_gt_one:    /* acosl(x > 1) */    /* acosdl(x > 1) */    {       ERRNO_DOMAIN; break;    }  case acos_gt_one:  case acosd_gt_one:    /* acos(x > 1) */    /* acosd(x > 1) */    {       ERRNO_DOMAIN; break;    }  case acosf_gt_one:  case acosdf_gt_one:    /* acosf(x > 1) */    /* acosdf(x > 1) */    {       ERRNO_DOMAIN; break;    }  case asinl_gt_one:  case asindl_gt_one:    /* asinl(x > 1) */    /* asindl(x > 1) */    {       ERRNO_DOMAIN; break;    }  case asin_gt_one:  case asind_gt_one:    /* asin(x > 1) */    /* asind(x > 1) */    {       ERRNO_DOMAIN; break;    }  case asinf_gt_one:  case asindf_gt_one:    /* asinf(x > 1) */    /* asindf(x > 1) */    {       ERRNO_DOMAIN; break;    }  case remainderl_by_zero:  case fmodl_by_zero:    /* fmodl(x,0) */    {       ERRNO_DOMAIN; break;    }  case remainder_by_zero:  case fmod_by_zero:    /* fmod(x,0) */    {       ERRNO_DOMAIN; break;    }  case remainderf_by_zero:  case fmodf_by_zero:    /* fmodf(x,0) */    {       ERRNO_DOMAIN; break;    }  case coshl_overflow:    /* coshl overflows */    {       RETVAL_HUGE_VALL; ERRNO_RANGE; break;    }  case cosh_overflow:    /* cosh overflows */    {       RETVAL_HUGE_VALD; ERRNO_RANGE; break;    }  case coshf_overflow:    /* coshf overflows */    {       RETVAL_HUGE_VALF; ERRNO_RANGE; break;    }  case sinhl_overflow:    /* sinhl overflows */    {       if (INPUT_XL > ZEROL_VALUE /*0*/) RETVAL_HUGE_VALL;       else RETVAL_NEG_HUGE_VALL;       ERRNO_RANGE; break;    }  case sinh_overflow:    /* sinh overflows */    {       if (INPUT_XD > ZEROD_VALUE /*0*/) RETVAL_HUGE_VALD;       else RETVAL_NEG_HUGE_VALD;       ERRNO_RANGE; break;    }  case sinhf_overflow:    /* sinhf overflows */    {       if (INPUT_XF > ZEROF_VALUE /*0*/) RETVAL_HUGE_VALF;       else RETVAL_NEG_HUGE_VALF;       ERRNO_RANGE; break;    }  case logbl_zero:   /* logbl(0) */   {      ERRNO_DOMAIN; break;   }  case logb_zero:   /* logb(0) */   {      ERRNO_DOMAIN; break;   }  case logbf_zero:   /* logbf(0) */   {      ERRNO_DOMAIN; break;   }  case ilogbl_zero:   /* ilogbl(0) */   {      ERRNO_RANGE; break;   }  case ilogb_zero:   /* ilogb(0) */   {      ERRNO_RANGE; break;   }  case ilogbf_zero:   /* ilogbf(0) */   {      ERRNO_RANGE; break;   }  default:    break;}return;/* _POSIX_ */}/*******************************//* __SVID__ and __XOPEN__ Path *//*******************************/else{  switch(input_tag)  {  case ldexpl_overflow:  case ldexpl_underflow:  case ldexp_overflow:  case ldexp_underflow:  case ldexpf_overflow:  case ldexpf_underflow:  case scalbnl_overflow:  case scalbnl_underflow:  case scalbn_overflow:  case scalbn_underflow:  case scalbnf_overflow:  case scalbnf_underflow:  case scalblnl_overflow:  case scalblnl_underflow:  case scalbln_overflow:  case scalbln_underflow:  case scalblnf_overflow:  case scalblnf_underflow:  case tandl_overflow:  case tand_overflow:  case tandf_overflow:  case cotdl_overflow:  case cotd_overflow:  case cotdf_overflow:  case cotl_overflow:  case cot_overflow:  case cotf_overflow:  case annuityl_overflow:  case annuityl_underflow:  case annuity_overflow:  case annuity_underflow:  case annuityf_overflow:  case annuityf_underflow:  case compoundl_overflow:  case compoundl_underflow:  case compound_overflow:  case compound_underflow:  case compoundf_overflow:  case compoundf_underflow:  {       ERRNO_RANGE; break;  }  case annuityl_by_zero:  case annuityl_less_m1:  case annuity_by_zero:  case annuity_less_m1:  case annuityf_by_zero:  case annuityf_less_m1:  case compoundl_by_zero:  case compoundl_less_m1:  case compound_by_zero:  case compound_less_m1:  case compoundf_by_zero:  case compoundf_less_m1:  {       ERRNO_DOMAIN; break;  }  case sqrtl_negative:    /* sqrtl(x < 0) */    {       DOMAINL; NAMEL = (char *) "sqrtl";       ifSVID       {          RETVAL_ZEROL;          NOT_MATHERRL          {            WRITEL_SQRT;            ERRNO_DOMAIN;          }       }       else       { /* NaN already computed */          NOT_MATHERRL {ERRNO_DOMAIN;}       }       *(long double *)retval = excl.retval;       break;    }  case sqrt_negative:    /* sqrt(x < 0) */    {       DOMAIND; NAMED = (char *) "sqrt";       ifSVID       {         RETVAL_ZEROD;         NOT_MATHERRD         {           WRITED_SQRT;           ERRNO_DOMAIN;         }       }       else       { /* NaN already computed */         NOT_MATHERRD {ERRNO_DOMAIN;}       }       *(double *)retval = exc.retval;       break;    }  case sqrtf_negative:    /* sqrtf(x < 0) */    {       DOMAINF; NAMEF = (char *) "sqrtf";       ifSVID       {         RETVAL_ZEROF;         NOT_MATHERRF         {           WRITEF_SQRT;           ERRNO_DOMAIN;         }       }       else       {         NOT_MATHERRF {ERRNO_DOMAIN;}       }       *(float *)retval = excf.retval;       break;    }  case logl_zero:    /* logl(0) */    {       SINGL; NAMEL = (char *) "logl";       ifSVID       {         RETVAL_NEG_HUGEL;         NOT_MATHERRL         {           WRITEL_LOG_ZERO;           ERRNO_DOMAIN;         }       }       else       {         RETVAL_NEG_HUGE_VALL;         NOT_MATHERRL {ERRNO_DOMAIN;}       }       *(long double *)retval = excl.retval;       break;    }  case log_zero:    /* log(0) */    {       SINGD; NAMED = (char *) "log";       ifSVID       {         RETVAL_NEG_HUGED;         NOT_MATHERRD         {           WRITED_LOG_ZERO;           ERRNO_DOMAIN;         }       }       else       {         RETVAL_NEG_HUGE_VALD;         NOT_MATHERRD {ERRNO_DOMAIN;}       }       *(double *)retval = exc.retval;       break;    }  case logf_zero:    /* logf(0) */    {       SINGF; NAMEF = (char *) "logf";       ifSVID       {         RETVAL_NEG_HUGEF;         NOT_MATHERRF         {            WRITEF_LOG_ZERO;            ERRNO_DOMAIN;         }       }       else       {         RETVAL_NEG_HUGE_VALF;         NOT_MATHERRF {ERRNO_DOMAIN;}       }       *(float *)retval = excf.retval;       break;    }  case logl_negative:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -