Previous 16-bit versions of Microsoft C/C++ and Microsoft Visual C++ supported the long double, 80-bit precision data type. In Win32 programming, however, the long double data type maps to the double, 64-bit precision data type. The Microsoft run-time library provides long double versions of the math functions only for backward compatibility. The long double function prototypes are identical to the prototypes for their double counterparts, except that the long double data type replaces the double data type. The long double versions of these functions should not be used in new code.
Double Functions and Their Long Double Counterparts
Function |
Long Double Counterpart |
Function |
Long Double Counterpart |
acos | acosl | frexp | frexpl |
asin | asinl | _hypot | _hypotl |
atan | atanl | ldexp | ldexpl |
atan2 | atan2l | log | logl |
atof | _atold | log10 | log10l |
Bessel functions j0, j1, jn | j0l, j1l, jnl | _matherr | _matherrl |
Bessel functions y0, y1, yn | y0l, y1l, ynl | modf | modfl |
_cabs | _cabsl | pow | powl |
ceil | ceill | sin | sinl |
cos | cosl | sinh | sinhl |
cosh | coshl | sqrt | sqrtl |
exp | expl | strtod | _strtold |
fabs | fabsl | tan | tanl |
floor | floorl | tanh | tanhl |
fmod | fmodl |