&pagelevel(5)&pagelevel
Im C-Laufzeitsystem gibt es zu jeder Funktion, die mit Gleitpunktzahlen arbeitet oder eine Gleitpunktzahl zurückliefert,
eine Implementierung der Funktion mit /390-Arithmetik,
eine Implementierung der Funktion mit IEEE-Arithmetik,
ein Makro-Define, das die Originalfunktion (/390-Funktion) auf die zugehörige IEEE-Funktion abbildet.
Prototyp einer IEEE-Funktion und zugehöriges Define sind in derselben Include-Datei abgelegt, in der auch die korrespondierende Originalfunktion deklariert ist. Dies hat den Vorteil, dass, außer ggf. <ieee_390.h> (siehe "Explizite Konvertierung von Gleitpunktzahlen"), für die Nutzung der IEEE-Gleitpunkt-Arithmetik keine zusätzlichen Include-Dateien benötigt werden.
Namen der IEEE-Funktionen
Die Namen der IEEE-Funktionen sind nach folgender Syntax aufgebaut:
__
originalfunktion_ieee()
Dabei ist für originalfunktion der Name der Originalfunktion einzusetzen.
Die IEEE-Variante von sin()
beispielsweise lautet __sin_ieee()
.
C-Bibliotheksfunktionen, zu denen es eine IEEE-Funktion gibt
acos()
| acosh()
| asin()
| asinh()
| atan()
|
atanh()
| atan2 ()
| atof ()
| cbrt ()
| ceil ()
|
ceilf()
| ceill()
| cos()
| cosh()
| difftime()
|
difftime64()
| ecvt()
| ecvt_r()
| erf()
| erfc()
|
exp()
| expm1()
| fabs()
| fcvt()
| fcvt_r()
|
floor()
| floorf()
| floorl()
| fmod()
| fprintf()
|
frexp()
| fscanf()
| gamma()
| gcvt()
| hypot()
|
ilogb()
| j0()
| j1()
| jn()
| ldexp()
|
lgamma()
| llrint()
| llrintf()
| llrintl()
| llround()
|
llroundf()
| llroundl()
| log()
| log10()
| log1p()
|
logb()
| lrint()
| lrintf()
| lrintfl()
| lround()
|
lroundf()
| lroundl()
| modf()
| modff()
| modfl()
|
nextafter ()
| pow ()
| printf ()
| remainder ()
| rint ()
|
rintf ()
| rintl ()
| round ()
| roundf ()
| roundl ()
|
scalb ()
| sin ()
| sinh ()
| snprintf ()
| sprintf ()
|
sqrt ()
| sscanf ()
| snprintf()
| sprintf()
| sqrt()
|
sscanf()
| strtod()
| strtof ()
| strtold ()
| tan
()
|
tanh
()
| vfprintf ()
| vfscanf ()
| vprintf ()
| vscanf ()
|
vsnprintf ()
| vsprintf ()
| vsscanf
()
| y0()
| y1(n)
|
yn ()
|
|
|
|
|
Für die folgenden Funktionen werden die IEEE-Prototypen nur im Sprachmodus C11 bzw. C++ 2017 generiert:
acosf()
| acosl()
| acoshf()
| acoshl()
| asinf()
|
asinl()
| asinhf()
| asinhl()
| atanf()
| atanl()
|
atanhf()
| atanhl()
| atan2f()
| atan2l()
| cbrtf()
|
cbrtl()
| copysign()
| copysignf()
| copysignl()
| cosf()
|
cosl()
| coshf()
| coshl()
| erff()
| erfl()
|
erfcf()
| erfcl()
| expf()
| expl()
| expm1f()
|
expm1l()
| exp2()
| exp2f()
| exp2l()
| fabsf()
|
fabsl()
| fdim()
| fdimf()
| fdiml()
| fmax()
|
fmaxf()
| fmaxl()
| fmin()
| fminf()
| fminl()
|
fmodf()
| fmodl()
| frexpf()
| frexpl()
| hypotf()
|
hypotl()
| ilogbf()
| ilogbl()
| ldexpf()
| ldexpl()
|
lgammaf()
| lgammal()
| logf()
| logl()
| log10f()
|
log10l()
| log1pf()
| log1pl()
| log2()
| log2f()
|
log2l()
| logbf()
| logbl()
| nearbyint()
| nearbyintf()
|
nearbyintl()
| nextafterf()
| nextafterl()
| nexttoward()
| nexttowardf()
|
nexttowardl()
| powf()
| powl()
| remainderf()
| remainderl()
|
remquo()
| remquof()
| remquol()
| scalbln()
| scalblnf()
|
scalblnl()
| scalbn()
| scalbnf()
| scalbnl ()
| sinf ()
|
sinl ()
| sinhf ()
| sinhl ()
| sqrtf ()
| sqrtl ()
|
tanf ()
| tanl ()
| tanhf ()
| tanhl ()
| tgamma ()
|
tgammaf ()
| tgammal ()
| trunc()
| truncf()
| truncl ()
|