24 #pragma pack(push,_CRT_PACKING)
36 #ifndef _EXCEPTION_DEFINED
45 #define _EXCEPTION_DEFINED
53 #ifndef _COMPLEX_DEFINED
58 #if !__STDC__ && !defined (__cplusplus)
60 #define complex _complex
63 #define _COMPLEX_DEFINED
89 #if !defined (_M_CEE_PURE)
92 const double _HUGE = System::Double::PositiveInfinity;
96 #define HUGE_VAL _HUGE
99 #define _HUGE_ENUF 1e+300
102 #define INFINITY ((float)(_HUGE_ENUF * _HUGE_ENUF))
103 #define HUGE_VALD ((double)INFINITY)
104 #define HUGE_VALF ((float)INFINITY)
105 #define HUGE_VALL ((long double)INFINITY)
106 #define NAN ((float)(INFINITY * 0.0F))
113 #define FP_INFINITE _INFCODE
114 #define FP_NAN _NANCODE
115 #define FP_NORMAL _FINITE
116 #define FP_SUBNORMAL _DENORM
120 #define _FP_ILOGB0 (-0x7fffffff - _C2)
121 #define _FP_ILOGBNAN 0x7fffffff
124 #define MATH_ERREXCEPT 2
125 #define math_errhandling (MATH_ERRNO | MATH_ERREXCEPT)
128 #define _FE_DIVBYZERO 0x04
129 #define _FE_INEXACT 0x20
130 #define _FE_INVALID 0x01
131 #define _FE_OVERFLOW 0x08
132 #define _FE_UNDERFLOW 0x10
158 #define _DFRAC ((unsigned short)((1 << _DOFF) - 1))
159 #define _DMASK ((unsigned short)(0x7fff & ~_DFRAC))
160 #define _DMAX ((unsigned short)((1 << (15 - _DOFF)) - 1))
161 #define _DSIGN ((unsigned short)0x8000)
164 #define _FFRAC ((unsigned short)((1 << _FOFF) - 1))
165 #define _FMASK ((unsigned short)(0x7fff & ~_FFRAC))
166 #define _FMAX ((unsigned short)((1 << (15 - _FOFF)) - 1))
167 #define _FSIGN ((unsigned short)0x8000)
170 #define _LFRAC ((unsigned short)(-1))
171 #define _LMASK ((unsigned short)0x7fff)
172 #define _LMAX ((unsigned short)0x7fff)
173 #define _LSIGN ((unsigned short)0x8000)
175 #define HUGE_EXP (int)(_DMAX * 900L / 1000)
176 #define VHUGE_EXP (int)(_VMAX * 900L / 1000)
177 #define FHUGE_EXP (int)(_FMAX * 900L / 1000)
178 #define LHUGE_EXP (int)(_LMAX * 900L / 1000)
180 #define DSIGN_C(_Val) (((_double_val *)(char *)&(_Val))->_Sh[_D0_C] & _DSIGN)
181 #define FSIGN_C(_Val) (((_float_val *)(char *)&(_Val))->_Sh[_F0_C] & _FSIGN)
182 #define LSIGN_C(_Val) (((_ldouble_val *)(char *)&(_Val))->_Sh[_L0_C] & _LSIGN)
236 unsigned short _Sh[8];
243 unsigned short _Sh[8];
250 unsigned short _Sh[8];
256 unsigned short _Word[8];
280 #define _CLASS_ARG(_Val) (sizeof ((_Val) + (float)0) == sizeof (float) ? 'f' : sizeof ((_Val) + (double)0) == sizeof (double) ? 'd' : 'l')
281 #define _CLASSIFY(_Val, _FFunc, _DFunc, _LDFunc) (_CLASS_ARG(_Val) == 'f' ? _FFunc((float)(_Val)) : _CLASS_ARG(_Val) == 'd' ? _DFunc((double)(_Val)) : _LDFunc((long double)(_Val)))
282 #define _CLASSIFY2(_Val1, _Val2, _FFunc, _DFunc, _LDFunc) (_CLASS_ARG((_Val1) + (_Val2)) == 'f' ? _FFunc((float)(_Val1), (float)(_Val2)) : _CLASS_ARG((_Val1) + (_Val2)) == 'd' ? _DFunc((double)(_Val1), (double)(_Val2)) : _LDFunc((long double)(_Val1), (long double)(_Val2)))
284 #define fpclassify(_Val) (_CLASSIFY(_Val, _fdclass, _dclass, _ldclass))
285 #define _FPCOMPARE(_Val1, _Val2) (_CLASSIFY2(_Val1, _Val2, _fdpcomp, _dpcomp, _ldpcomp))
287 #define isfinite(_Val) (fpclassify(_Val) <= 0)
288 #define isinf(_Val) (fpclassify(_Val) == FP_INFINITE)
289 #define isnan(_Val) (fpclassify(_Val) == FP_NAN)
290 #define isnormal(_Val) (fpclassify(_Val) == FP_NORMAL)
291 #define signbit(_Val) (_CLASSIFY(_Val, _fdsign, _dsign, _ldsign))
293 #define isgreater(x, y) ((_FPCOMPARE(x, y) & _FP_GT) != 0)
294 #define isgreaterequal(x, y) ((_FPCOMPARE(x, y) & (_FP_EQ | _FP_GT)) != 0)
295 #define isless(x, y) ((_FPCOMPARE(x, y) & _FP_LT) != 0)
296 #define islessequal(x, y) ((_FPCOMPARE(x, y) & (_FP_LT | _FP_EQ)) != 0)
297 #define islessgreater(x, y) ((_FPCOMPARE(x, y) & (_FP_LT | _FP_GT)) != 0)
298 #define isunordered(x, y) (_FPCOMPARE(x, y) == 0)
339 inline __nothrow int _fpcomp(
double _X,
double _Y)
344 inline __nothrow int _fpcomp(
long double _X,
long double _Y)
349 template<
class _Trc,
class _Tre>
struct _Combined_type
354 template<>
struct _Combined_type<float, double>
356 typedef double _Type;
359 template<>
struct _Combined_type<float, long double>
361 typedef long double _Type;
364 template<
class _Ty,
class _T2>
struct _Real_widened
366 typedef long double _Type;
369 template<>
struct _Real_widened<float, float>
374 template<>
struct _Real_widened<float, double>
376 typedef double _Type;
379 template<>
struct _Real_widened<double, float>
381 typedef double _Type;
384 template<>
struct _Real_widened<double, double>
386 typedef double _Type;
389 template<
class _Ty>
struct _Real_type
391 typedef double _Type;
394 template<>
struct _Real_type<float>
399 template<>
struct _Real_type<long double>
401 typedef long double _Type;
404 template<
class _T1,
class _T2>
inline __nothrow int _fpcomp(_T1 _X, _T2 _Y)
406 typedef typename _Combined_type<float,
407 typename _Real_widened<
410 return (_fpcomp((_Tw)_X, (_Tw)_Y));
435 return ((_fpcomp(_X, _Y) &
_FP_GT) != 0);
443 template<
class _Ty1,
class _Ty2>
inline __nothrow bool isless(_Ty1 _X, _Ty2 _Y)
445 return ((_fpcomp(_X, _Y) &
_FP_LT) != 0);
460 return (_fpcomp(_X, _Y) == 0);
469 #if !defined (__assembler)
472 long long __cdecl
llabs(
_In_ long long _X);
474 double __cdecl
acos(
_In_ double _X);
476 double __cdecl
asin(
_In_ double _X);
478 double __cdecl
atan(
_In_ double _X);
484 double __cdecl
cos(
_In_ double _X);
485 double __cdecl
cosh(
_In_ double _X);
488 double __cdecl
exp(
_In_ double _X);
501 double __cdecl
log(
_In_ double _X);
519 double __cdecl
sin(
_In_ double _X);
520 double __cdecl
sinh(
_In_ double _X);
522 double __cdecl
tan(
_In_ double _X);
523 double __cdecl
tanh(
_In_ double _X);
544 #if defined (MRTDLL) || defined (_M_CEE_PURE)
599 #if defined (_M_IX86)
601 _CRTIMP int __cdecl _set_SSE2_enable(
_In_ int _Flag);
613 _CRTIMP int __cdecl _set_FMA3_enable(
_In_ int _Flag);
624 #if defined (_M_X64) || defined (_M_ARM)
639 return (
float)
acos(_X);
644 return (
float)
asin(_X);
649 return (
float)
atan2(_Y, _X);
654 return (
float)
atan(_X);
659 return (
float)
ceil(_X);
664 return (
float)
cos(_X);
669 return (
float)
cosh(_X);
674 return (
float)
exp(_X);
687 return (
float)
fabs(_X);
692 #if defined (_M_X64) || defined (_M_ARM)
701 return (
float)
floor(_X);
706 return (
float)
fmod(_X, _Y);
713 return (
float)
frexp(_X, _Y);
723 return (
float)
ldexp(_X, _Y);
726 #if defined (_M_X64) || defined (_M_ARM)
742 return (
float)
log10(_X);
747 return (
float)
log(_X);
760 return (
float)
pow(_X, _Y);
765 return (
float)
sin(_X);
770 return (
float)
sinh(_X);
775 return (
float)
sqrt(_X);
780 return (
float)
tan(_X);
785 return (
float)
tanh(_X);
794 return acos((
double)_X);
801 return asin((
double)_X);
806 return atan2((
double)_Y, (
double)_X);
813 return atan((
double)_X);
820 return ceil((
double)_X);
832 return _copysign((
double)_X, (
double)_Y);
837 return cosh((
double)_X);
842 return cos((
double)_X);
850 return exp((
double)_X);
858 return fabs((
double)_X);
865 return floor((
double)_X);
874 return fmod((
double)_X, (
double)_Y);
879 return frexp((
double)_X, _Y);
886 return _hypot((
double)_X, (
double)_Y);
891 return _hypot((
double)_X, (
double)_Y);
896 return ldexp((
double)_X, _Y);
905 return log((
double)_X);
910 return log10((
double)_X);
922 _F =
modf((
double)_X, &_I);
933 return pow((
double)_X, (
double)_Y);
945 return sinh((
double)_X);
950 return sin((
double)_X);
955 return sqrt((
double)_X);
960 return tanh((
double)_X);
965 return tan((
double)_X);
972 #define _matherrl _matherr
980 #define DOMAIN _DOMAIN
982 #define OVERFLOW _OVERFLOW
983 #define UNDERFLOW _UNDERFLOW
987 #define matherr _matherr
991 #if !defined (_M_CEE_PURE)
994 const double HUGE =
_HUGE;
1012 template<
class _Ty>
inline
1013 _Ty _Pow_int(_Ty _X,
int _Y)
throw()
1016 _N = (
unsigned int)_Y;
1018 _N = (
unsigned int)(-_Y);
1019 for (_Ty _Z = _Ty(1); ; _X *= _X)
1022 if ((_N >>= 1) == 0)
1023 return (_Y < 0 ? _Ty(1) / _Z : _Z); }}
1026 {
return (
fabs(_X)); }
1028 {
return (_Pow_int(_X, _Y)); }
1030 {
return (
fabsf(_X)); }
1032 {
return (
acosf(_X)); }
1036 {
return (
asinf(_X)); }
1040 {
return (
atanf(_X)); }
1044 {
return (
atan2f(_Y, _X)); }
1046 {
return (
cbrtf(_X)); }
1048 {
return (
ceilf(_X)); }
1052 {
return (
cosf(_X)); }
1054 {
return (
coshf(_X)); }
1056 {
return (
erff(_X)); }
1058 {
return (
erfcf(_X)); }
1060 {
return (
expf(_X)); }
1062 {
return (
exp2f(_X)); }
1066 {
return (
fabsf(_X)); }
1068 {
return (
fdimf(_X, _Y)); }
1072 {
return (
fmaf(_X, _Y, _Z)); }
1074 {
return (
fmaxf(_X, _Y)); }
1076 {
return (
fminf(_X, _Y)); }
1078 {
return (
fmodf(_X, _Y)); }
1080 {
return (
frexpf(_X, _Y)); }
1082 {
return (
hypotf(_X, _Y)); }
1086 {
return (
ldexpf(_X, _Y)); }
1094 {
return (
logf(_X)); }
1100 {
return (
log2f(_X)); }
1102 {
return (
logbf(_X)); }
1108 {
return (
modff(_X, _Y)); }
1116 {
return (
powf(_X, _Y)); }
1118 {
return (_Pow_int(_X, _Y)); }
1122 {
return (
remquof(_X, _Y, _Z)); }
1124 {
return (
rintf(_X)); }
1132 {
return (
sinf(_X)); }
1134 {
return (
sinhf(_X)); }
1136 {
return (
sqrtf(_X)); }
1138 {
return (
tanf(_X)); }
1140 {
return (
tanhf(_X)); }
1146 {
return (
fabsl(_X)); }
1148 {
return (
acosl(_X)); }
1152 {
return (
asinl(_X)); }
1156 {
return (
atanl(_X)); }
1160 {
return (
atan2l(_Y, _X)); }
1162 {
return (
cbrtl(_X)); }
1164 {
return (
ceill(_X)); }
1168 {
return (
cosl(_X)); }
1170 {
return (
coshl(_X)); }
1172 {
return (
erfl(_X)); }
1174 {
return (
erfcl(_X)); }
1176 {
return (
expl(_X)); }
1178 {
return (
exp2l(_X)); }
1182 {
return (
fabsl(_X)); }
1184 {
return (
fdiml(_X, _Y)); }
1188 {
return (
fmal(_X, _Y, _Z)); }
1190 {
return (
fmaxl(_X, _Y)); }
1192 {
return (
fminl(_X, _Y)); }
1194 {
return (
fmodl(_X, _Y)); }
1196 {
return (
frexpl(_X, _Y)); }
1198 {
return (
hypotl(_X, _Y)); }
1202 {
return (
ldexpl(_X, _Y)); }
1210 {
return (
logl(_X)); }
1216 {
return (
log2l(_X)); }
1218 {
return (
logbl(_X)); }
1224 {
return (
modfl(_X, _Y)); }
1232 {
return (
powl(_X, _Y)); }
1234 {
return (_Pow_int(_X, _Y)); }
1238 {
return (
remquol(_X, _Y, _Z)); }
1240 {
return (
rintl(_X)); }
1248 {
return (
sinl(_X)); }
1250 {
return (
sinhl(_X)); }
1252 {
return (
sqrtl(_X)); }
1254 {
return (
tanl(_X)); }
1256 {
return (
tanhl(_X)); }
1269 #if defined (_USE_MATH_DEFINES) && !defined (_MATH_DEFINES_DEFINED)
1270 #define _MATH_DEFINES_DEFINED
1293 #define M_E 2.71828182845904523536
1294 #define M_LOG2E 1.44269504088896340736
1295 #define M_LOG10E 0.434294481903251827651
1296 #define M_LN2 0.693147180559945309417
1297 #define M_LN10 2.30258509299404568402
1298 #define M_PI 3.14159265358979323846
1299 #define M_PI_2 1.57079632679489661923
1300 #define M_PI_4 0.785398163397448309616
1301 #define M_1_PI 0.318309886183790671538
1302 #define M_2_PI 0.636619772367581343076
1303 #define M_2_SQRTPI 1.12837916709551257390
1304 #define M_SQRT2 1.41421356237309504880
1305 #define M_SQRT1_2 0.707106781186547524401
#define _Out_
Definition: sal.h:351
__inline long double __CRTDECL ceill(_In_ long double _X)
Definition: math.h:818
_CRTIMP double __cdecl fdim(_In_ double _X, _In_ double _Y)
_CRTIMP double __cdecl scalbn(_In_ double _X, _In_ int _Y)
_CRTIMP float __cdecl fmaf(_In_ float _X, _In_ float _Y, _In_ float _Z)
_CRTIMP double __cdecl copysign(_In_ double _X, _In_ double _Y)
short _CRTIMP __cdecl _dnorm(_In_ unsigned short *_Ps)
_CRTIMP long double __cdecl expm1l(_In_ long double _X)
_CRTIMP long long __cdecl llrintf(_In_ float _X)
long double _CRTIMP __cdecl _ldlog(_In_ long double _X, _In_ int _Baseflag)
__inline float __CRTDECL atanf(_In_ float _X)
Definition: math.h:652
double arg2
Definition: math.h:41
double __cdecl atan(_In_ double _X)
_CRTIMP float __cdecl exp2f(_In_ float _X)
__inline float __CRTDECL cosf(_In_ float _X)
Definition: math.h:662
const _float_const _FNan_C
__inline float __CRTDECL atan2f(_In_ float _Y, _In_ float _X)
Definition: math.h:647
__inline float __CRTDECL tanf(_In_ float _X)
Definition: math.h:778
const _float_const _LEps_C
__inline float __CRTDECL tanhf(_In_ float _X)
Definition: math.h:783
const _float_const _LRteps_C
_Check_return_ _CRTIMP double __cdecl atof(_In_z_ const char *_String)
_CRTIMP float __cdecl erfcf(_In_ float _X)
_CRTIMP long double __cdecl nanl(_In_ const char *)
double y
Definition: math.h:55
_Check_return_ _CRTIMP double __cdecl _atof_l(_In_z_ const char *_String, _In_opt_ _locale_t _Locale)
_CRTIMP double __cdecl logb(_In_ double _X)
_CRTIMP long double __cdecl acoshl(_In_ long double _X)
_CRTIMP long double __cdecl tgammal(_In_ long double _X)
#define isgreater(x, y)
Definition: math.h:293
_CRTIMP float __cdecl nexttowardf(_In_ float _X, _In_ long double _Y)
__inline float __CRTDECL sqrtf(_In_ float _X)
Definition: math.h:773
__inline float __CRTDECL asinf(_In_ float _X)
Definition: math.h:642
double __cdecl fmod(_In_ double _X, _In_ double _Y)
short _CRTIMP __cdecl _fdclass(_In_ float _X)
_CRTIMP float __cdecl remainderf(_In_ float _X, _In_ float _Y)
_CRTIMP float __cdecl lgammaf(_In_ float _X)
_CRTIMP long double __cdecl fminl(_In_ long double _X, _In_ long double _Y)
_CRTIMP long __cdecl lrint(_In_ double _X)
_CRTIMP double __cdecl modf(_In_ double _X, _Out_ double *_Y)
__inline float __CRTDECL hypotf(_In_ float _X, _In_ float _Y)
Definition: math.h:716
_CRTIMP float __cdecl tgammaf(_In_ float _X)
_CRTIMP double __cdecl lgamma(_In_ double _X)
#define _CRTIMP
Definition: crtdefs.h:23
_CRTIMP float __cdecl fminf(_In_ float _X, _In_ float _Y)
__inline long double __CRTDECL powl(_In_ long double _X, _In_ long double _Y)
Definition: math.h:931
_CRT_JIT_INTRINSIC double __cdecl fabs(_In_ double _X)
_CRTIMP float __cdecl asinhf(_In_ float _X)
_CRTIMP double __cdecl _j1(_In_ double _X)
#define islessgreater(x, y)
Definition: math.h:297
#define isless(x, y)
Definition: math.h:295
#define isfinite(_Val)
Definition: math.h:287
__inline float __CRTDECL coshf(_In_ float _X)
Definition: math.h:667
_CRTIMP double __cdecl _jn(int _X, _In_ double _Y)
char * name
Definition: math.h:39
#define isgreaterequal(x, y)
Definition: math.h:294
_CRTIMP double __cdecl log1p(_In_ double _X)
_CRTIMP long double __cdecl erfcl(_In_ long double _X)
_CRTIMP double __cdecl fmax(_In_ double _X, _In_ double _Y)
long __cdecl labs(_In_ long _X)
_CRTIMP double __cdecl _cabs(_In_ struct _complex _Complex_value)
_CRTIMP _In_opt_z_ const wchar_t _In_opt_z_ const wchar_t unsigned int
Definition: crtdefs.h:642
const long double _LZero_C
_N
Definition: wchar.h:1269
_CRTIMP long double __cdecl scalbnl(_In_ long double _X, _In_ int _Y)
__inline long double __CRTDECL fabsl(_In_ long double _X)
Definition: math.h:856
_CRTIMP long double __cdecl logbl(_In_ long double _X)
const _float_const _FEps_C
__inline long double __CRTDECL atanl(_In_ long double _X)
Definition: math.h:811
_CRTIMP float __cdecl _copysignf(_In_ float _Number, _In_ float _Sign)
__inline float __CRTDECL fabsf(_In_ float _X)
Definition: math.h:685
int type
Definition: math.h:38
_CRTIMP float __cdecl fdimf(_In_ float _X, _In_ float _Y)
_CRTIMP double __cdecl ldexp(_In_ double _X, _In_ int _Y)
_CRTIMP long double __cdecl fmal(_In_ long double _X, _In_ long double _Y, _In_ long double _Z)
__inline float __CRTDECL floorf(_In_ float _X)
Definition: math.h:699
int _CRTIMP __cdecl _dpcomp(_In_ double _X, _In_ double _Y)
_CRTIMP long long __cdecl llrint(_In_ double _X)
_CRTIMP double __cdecl erf(_In_ double _X)
double _CRTIMP __cdecl _dsin(_In_ double _X, _In_ unsigned int _Qoff)
_CRTIMP long __cdecl lroundl(_In_ long double _X)
_CRTIMP float __cdecl roundf(_In_ float _X)
_CRTIMP float __cdecl cbrtf(_In_ float _X)
_CRTIMP double __cdecl floor(_In_ double _X)
_CRTIMP float __cdecl fmaxf(_In_ float _X, _In_ float _Y)
short _CRTIMP __cdecl _fdtest(_In_ float *_Px)
__inline long double __CRTDECL hypotl(_In_ long double _X, _In_ long double _Y)
Definition: math.h:889
const _float_const _Hugeval_C
_CRTIMP double __cdecl round(_In_ double _X)
__inline float __CRTDECL log10f(_In_ float _X)
Definition: math.h:740
short _CRTIMP __cdecl _dtest(_In_ double *_Px)
_CRTIMP double __cdecl atanh(_In_ double _X)
__inline float __CRTDECL logf(_In_ float _X)
Definition: math.h:745
double x
Definition: math.h:55
double __cdecl _dpoly(_In_ double _X, _In_ const double *_Tab, _In_ int _N)
_CRTIMP long double __cdecl remainderl(_In_ long double _X, _In_ long double _Y)
_CRTIMP float __cdecl _chgsignf(_In_ float _X)
__inline float __CRTDECL frexpf(_In_ float _X, _Out_ int *_Y)
Definition: math.h:711
_CRTIMP long __cdecl lround(_In_ double _X)
short _CRTIMP __cdecl _dclass(_In_ double _X)
_CRTIMP long double __cdecl atanhl(_In_ long double _X)
short _CRTIMP __cdecl _ldclass(_In_ long double _X)
_CRTIMP float __cdecl scalblnf(_In_ float _X, _In_ long _Y)
#define isunordered(x, y)
Definition: math.h:298
_CRT_JIT_INTRINSIC double __cdecl sqrt(_In_ double _X)
double __cdecl atan2(_In_ double _Y, _In_ double _X)
_CRTIMP long double __cdecl log1pl(_In_ long double _X)
__inline float __CRTDECL powf(_In_ float _X, _In_ float _Y)
Definition: math.h:758
#define _CRT_JIT_INTRINSIC
Definition: crtdefs.h:414
double __cdecl exp(_In_ double _X)
__inline float __CRTDECL fmodf(_In_ float _X, _In_ float _Y)
Definition: math.h:704
double _Val
Definition: math.h:237
short _CRTIMP __cdecl _ldtest(_In_ long double *_Px)
__inline float __CRTDECL sinhf(_In_ float _X)
Definition: math.h:768
__inline long double __CRTDECL expl(_In_ long double _X)
Definition: math.h:848
__inline long double __CRTDECL sqrtl(_In_ long double _X)
Definition: math.h:953
_CRTIMP long double __cdecl copysignl(_In_ long double _X, _In_ long double _Y)
float _Float
Definition: math.h:257
_CRTIMP long double __cdecl scalblnl(_In_ long double _X, _In_ long _Y)
_CRTIMP float __cdecl rintf(_In_ float _X)
#define _FP_GT
Definition: math.h:276
#define isnan(_Val)
Definition: math.h:289
__inline long double __CRTDECL log10l(_In_ long double _X)
Definition: math.h:908
double __cdecl tan(_In_ double _X)
_CRTIMP double __cdecl fmin(_In_ double _X, _In_ double _Y)
double double_t
Definition: math.h:68
#define _Check_return_
Definition: sal.h:563
_CRTIMP float __cdecl truncf(_In_ float _X)
_CRTIMP long double __cdecl fmaxl(_In_ long double _X, _In_ long double _Y)
short _CRTIMP __cdecl _fdscale(_In_ float *_Px, _In_ long _Lexp)
#define _In_z_
Definition: sal.h:319
_CRTIMP double __cdecl log2(_In_ double _X)
#define _In_
Definition: sal.h:314
double _Double
Definition: math.h:258
_CRTIMP long double __cdecl exp2l(_In_ long double _X)
_CRTIMP float __cdecl log2f(_In_ float _X)
long double _CRTIMP __cdecl _ldsin(_In_ long double _X, _In_ unsigned int _Qoff)
_Check_return_ _In_z_ const char * _Locale
Definition: locale.h:117
const _float_const _Inf_C
#define _In_opt_
Definition: sal.h:315
float float_t
Definition: math.h:67
_CRTIMP float __cdecl logbf(_In_ float _X)
_CRTIMP long long __cdecl llrintl(_In_ long double _X)
_CRTIMP float __cdecl log1pf(_In_ float _X)
_CRTIMP float __cdecl _hypotf(_In_ float _X, _In_ float _Y)
_CRTIMP double __cdecl scalbln(_In_ double _X, _In_ long _Y)
float _Val
Definition: math.h:244
_CRTIMP double __cdecl cbrt(_In_ double _X)
__inline long double __CRTDECL cosl(_In_ long double _X)
Definition: math.h:840
_CRTIMP long double __cdecl nexttowardl(_In_ long double _X, _In_ long double _Y)
long double __cdecl _ldpoly(_In_ long double _X, _In_ const long double *_Tab, _In_ int _N)
const _float_const _FSnan_C
#define islessequal(x, y)
Definition: math.h:296
int _CRTIMP __cdecl _ldsign(_In_ long double _X)
__inline long double __CRTDECL coshl(_In_ long double _X)
Definition: math.h:835
_In_ double _Y
Definition: math.h:999
#define __nothrow
Definition: sal.h:2384
_CRTIMP float __cdecl nearbyintf(_In_ float _X)
_Check_return_ _CRTIMP double __cdecl _chgsign(_In_ double _X)
int __cdecl _matherr(_Inout_ struct _exception *_Except)
short _CRTIMP __cdecl _d_int(_In_ double *_Px, _In_ short _Xexp)
float __cdecl _fdpoly(_In_ float _X, _In_ const float *_Tab, _In_ int _N)
_CRTIMP float __cdecl scalbnf(_In_ float _X, _In_ int _Y)
const _float_const _Snan_C
__inline float __CRTDECL sinf(_In_ float _X)
Definition: math.h:763
double __cdecl tanh(_In_ double _X)
_CRTIMP float __cdecl expm1f(_In_ float _X)
__inline long double __CRTDECL floorl(_In_ long double _X)
Definition: math.h:863
__inline long double __CRTDECL _copysignl(_In_ long double _X, _In_ long double _Y)
Definition: math.h:830
_CRTIMP long double __cdecl rintl(_In_ long double _X)
_CRTIMP double __cdecl _j0(_In_ double _X)
short _CRTIMP __cdecl _fdunscale(_In_ short *_Pex, _In_ float *_Px)
double __cdecl sinh(_In_ double _X)
_CRTIMP double __cdecl remainder(_In_ double _X, _In_ double _Y)
short _CRTIMP __cdecl _ldunscale(_In_ short *_Pex, _In_ long double *_Px)
double retval
Definition: math.h:42
_CRTIMP double __cdecl _y0(_In_ double _X)
#define FP_INFINITE
Definition: math.h:113
_CRTIMP long double __cdecl log2l(_In_ long double _X)
short _CRTIMP __cdecl _fdexp(_In_ float *_Px, _In_ float _Y, _In_ long _Eoff)
_CRTIMP double __cdecl erfc(_In_ double _X)
const _float_const _LSnan_C
_CRTIMP long double __cdecl nextafterl(_In_ long double _X, _In_ long double _Y)
__inline long double __CRTDECL ldexpl(_In_ long double _X, _In_ int _Y)
Definition: math.h:894
_CRTIMP double __cdecl frexp(_In_ double _X, _Out_ int *_Y)
short _CRTIMP __cdecl _fd_int(_In_ float *_Px, _In_ short _Xexp)
long double _Val
Definition: math.h:251
const _float_const _LNan_C
_CRTIMP double __cdecl _y1(_In_ double _X)
const _float_const _LInf_C
short _CRTIMP __cdecl _ld_int(_In_ long double *_Px, _In_ short _Xexp)
#define _FP_LT
Definition: math.h:274
_CRTIMP int __cdecl ilogbl(_In_ long double _X)
_CRTIMP double __cdecl asinh(_In_ double _X)
__inline long double __CRTDECL tanhl(_In_ long double _X)
Definition: math.h:958
_CRTIMP double __cdecl nexttoward(_In_ double _X, _In_ long double _Y)
_In_ wctype_t _Type
Definition: ctype.h:205
_CRTIMP long long __cdecl llroundf(_In_ float _X)
_CRTIMP double __cdecl rint(_In_ double _X)
_CRTIMP long long __cdecl llroundl(_In_ long double _X)
double __cdecl cosh(_In_ double _X)
_CRTIMP long double __cdecl erfl(_In_ long double _X)
#define __CRTDECL
Definition: crtdefs.h:622
__inline long double __CRTDECL modfl(_In_ long double _X, _Out_ long double *_Y)
Definition: math.h:919
__inline long double __CRTDECL sinl(_In_ long double _X)
Definition: math.h:948
_Check_return_ _CRTIMP double __cdecl _copysign(_In_ double _Number, _In_ double _Sign)
_CRTIMP int __cdecl ilogbf(_In_ float _X)
short _CRTIMP __cdecl _ldexp(_In_ long double *_Px, _In_ long double _Y, _In_ long _Eoff)
_CRTIMP double __cdecl _yn(_In_ int _X, _In_ double _Y)
double __cdecl acos(_In_ double _X)
_CRTIMP long double __cdecl truncl(_In_ long double _X)
const _float_const _FRteps_C
double __cdecl log10(_In_ double _X)
_CRTIMP float __cdecl acoshf(_In_ float _X)
short _CRTIMP __cdecl _dunscale(_In_ short *_Pex, _In_ double *_Px)
int __cdecl abs(_In_ int _X)
__inline long double __CRTDECL tanl(_In_ long double _X)
Definition: math.h:963
__inline float __CRTDECL acosf(_In_ float _X)
Definition: math.h:637
_CRTIMP double __cdecl fma(_In_ double _X, _In_ double _Y, _In_ double _Z)
_CRTIMP long double __cdecl fdiml(_In_ long double _X, _In_ long double _Y)
__inline float __CRTDECL ceilf(_In_ float _X)
Definition: math.h:657
__inline float __CRTDECL modff(_In_ float _X, _Out_ float *_Y)
Definition: math.h:750
_CRTIMP long double __cdecl asinhl(_In_ long double _X)
short _CRTIMP __cdecl _ldscale(_In_ long double *_Px, _In_ long _Lexp)
short _CRTIMP __cdecl _dscale(_In_ double *_Px, _In_ long _Lexp)
int _CRTIMP __cdecl _fdpcomp(_In_ float _X, _In_ float _Y)
const _float_const _Eps_C
__inline long double __CRTDECL sinhl(_In_ long double _X)
Definition: math.h:943
void __cdecl _fperrraise(_In_ int _Except)
#define isnormal(_Val)
Definition: math.h:290
const _float_const _Rteps_C
_CRTIMP double __cdecl remquo(_In_ double _X, _In_ double _Y, _Out_ int *_Z)
_CRTIMP double __cdecl exp2(_In_ double _X)
_CRTIMP double __cdecl nextafter(_In_ double _X, _In_ double _Y)
__inline long double __CRTDECL atan2l(_In_ long double _Y, _In_ long double _X)
Definition: math.h:804
#define isinf(_Val)
Definition: math.h:288
_CRTIMP long double __cdecl nearbyintl(_In_ long double _X)
_CRTIMP double __cdecl ceil(_In_ double _X)
double __cdecl sin(_In_ double _X)
int _CRTIMP __cdecl _ldpcomp(_In_ long double _X, _In_ long double _Y)
_CRTIMP float __cdecl nanf(_In_ const char *)
_CRTIMP double __cdecl acosh(_In_ double _X)
double __cdecl asin(_In_ double _X)
__inline double __CRTDECL hypot(_In_ double _X, _In_ double _Y)
Definition: math.h:555
double __cdecl pow(_In_ double _X, _In_ double _Y)
_CRTIMP long double __cdecl lgammal(_In_ long double _X)
long long __cdecl llabs(_In_ long long _X)
double __cdecl cos(_In_ double _X)
#define _Inout_
Definition: sal.h:384
const _float_const _LDenorm_C
int _CRTIMP __cdecl _fdsign(_In_ float _X)
_CRTIMP long __cdecl lroundf(_In_ float _X)
const long double _LXbig_C
double arg1
Definition: math.h:40
__inline long double __CRTDECL logl(_In_ long double _X)
Definition: math.h:903
__inline long double __CRTDECL fmodl(_In_ long double _X, _In_ long double _Y)
Definition: math.h:872
_CRTIMP long double __cdecl remquol(_In_ long double _X, _In_ long double _Y, _Out_ int *_Z)
short _CRTIMP __cdecl _fdnorm(_In_ unsigned short *_Ps)
_CRTIMP float __cdecl erff(_In_ float _X)
double __cdecl log(_In_ double _X)
#define _FP_EQ
Definition: math.h:275
float _CRTIMP __cdecl _fdlog(_In_ float _X, _In_ int _Baseflag)
float _CRTIMP __cdecl _fdsin(_In_ float _X, _In_ unsigned int _Qoff)
const _float_const _Denorm_C
short _CRTIMP __cdecl _dexp(_In_ double *_Px, _In_ double _Y, _In_ long _Eoff)
#define fpclassify(_Val)
Definition: math.h:284
__inline float __CRTDECL ldexpf(_In_ float _X, _In_ int _Y)
Definition: math.h:721
_CRT_NONSTDC_DEPRECATE(_j0) _CRTIMP double __cdecl j0(_In_ double _X)
_CRTIMP long long __cdecl llround(_In_ double _X)
_CRTIMP double __cdecl expm1(_In_ double _X)
double _CRTIMP __cdecl _dlog(_In_ double _X, _In_ int _Baseflag)
_CRTIMP long double __cdecl roundl(_In_ long double _X)
const _float_const _FInf_C
_CRTIMP float __cdecl remquof(_In_ float _X, _In_ float _Y, _Out_ int *_Z)
#define signbit(_Val)
Definition: math.h:291
__inline long double __CRTDECL _chgsignl(_In_ long double _X)
Definition: math.h:823
const _float_const _FDenorm_C
int _CRTIMP __cdecl _dsign(_In_ double _X)
_CRTIMP double __cdecl nearbyint(_In_ double _X)
_CRTIMP float __cdecl nextafterf(_In_ float _X, _In_ float _Y)
__inline long double __CRTDECL frexpl(_In_ long double _X, _Out_ int *_Y)
Definition: math.h:877
_CRTIMP double __cdecl _hypot(_In_ double _X, _In_ double _Y)
__inline long double __CRTDECL asinl(_In_ long double _X)
Definition: math.h:799
const _float_const _Nan_C
_CRTIMP double __cdecl nan(_In_ const char *)
_CRTIMP float __cdecl atanhf(_In_ float _X)
_CRTIMP long double __cdecl cbrtl(_In_ long double _X)
#define FP_NAN
Definition: math.h:114
_CRTIMP float __cdecl copysignf(_In_ float _X, _In_ float _Y)
#define FP_NORMAL
Definition: math.h:115
_CRTIMP long __cdecl lrintl(_In_ long double _X)
_CRTIMP double __cdecl tgamma(_In_ double _X)
__inline float __CRTDECL expf(_In_ float _X)
Definition: math.h:672
long double _Long_double
Definition: math.h:259
_CRTIMP double __cdecl trunc(_In_ double _X)
Definition: crtdefs.h:2078
_CRTIMP long __cdecl lrintf(_In_ float _X)
_CRTIMP int __cdecl ilogb(_In_ double _X)
__inline long double __CRTDECL _hypotl(_In_ long double _X, _In_ long double _Y)
Definition: math.h:884
__inline long double __CRTDECL acosl(_In_ long double _X)
Definition: math.h:792