Megosztás:


nextafter, nextafterf, nextafterl, _nextafter_nextafterf, nexttoward, nexttowardfnexttowardl

A következő ábrázolható lebegőpontos értéket adja vissza.

Szemantika

double nextafter( double x, double y );
float nextafterf( float x, float y );
long double nextafterl( long double x, long double y );

double _nextafter( double x, double y );
float _nextafterf( float x, float y ); /* x64 only */

#define nextafter(X, Y) // Requires C11 or later

double nexttoward( double x, long double y );
float nexttowardf( float x, long double y );
long double nexttowardl( long double x, long double y );

#define nexttoward(X, Y) // Requires C11 or later

float nextafter( float x, float y ); /* C++ only, requires <cmath> */
long double nextafter( long double x, long double y ); /* C++ only, requires <cmath> */

float nexttoward( float x, long double y ); /* C++ only, requires <cmath> */
long double nexttoward( long double x, long double y ); /* C++ only, requires <cmath> */

Paraméterek

x
A kezdő lebegőpontos érték.

y
A lebegőpontos érték, amely felé halad.

Visszaadott érték

A visszatérési típus következő reprezentálási lebegőpontos értékét adja eredményül x a következő irányban y. Ha x és y egyenlő, akkor a függvény visszatérési ytípussá alakul, kivétel nélkül. Ha x nem egyenlő y, és az eredmény egy denormális vagy nulla, a FE_UNDERFLOWFE_INEXACT lebegőpontos kivételállapotok be vannak állítva, és a helyes eredményt adja vissza. Ha vagy xy NAN, akkor a visszatérési érték a bemeneti NAN-k egyike. Ha x véges, és az eredmény végtelen vagy nem ábrázolható a típusban, a rendszer egy helyesen aláírt végtelent vagy NAN-t ad vissza, a FE_OVERFLOWFE_INEXACT lebegőpontos kivételállapotok be vannak állítva, és errno a következőre ERANGEvan állítva: .

Megjegyzések

A nextafter függvénycsaládok nexttoward egyenértékűek, kivéve a paraméter típusát y. Ha x és y egyenlő, a visszaadott y érték visszatérési típussá lesz konvertálva.

Mivel a C++ lehetővé teszi a túlterhelést, ha belefoglalja <cmath> a túlterheléstnextafter, a visszatérési float és nexttowardlong double a típusokat is meghívhatja. Egy C programban, kivéve, ha a makrót <tgmath.h> használja a függvény meghívásához, nextafter és nexttoward mindig visszaadja a függvényt double.

Ha a makrót vagy nexttoward a nextafter makrót <tgmath.h>használja, az argumentum típusa határozza meg, hogy a függvény melyik verziója legyen kiválasztva. Részletekért lásd: Type-generic math .

A _nextafter függvények a _nextafterf Microsoft-specifikusak. A _nextafterf függvény csak x64-hez való fordításkor érhető el.

Alapértelmezés szerint ennek a függvénynek a globális állapota hatóköre az alkalmazásra terjed ki. A viselkedés módosításához tekintse meg a globális állapotot a CRT-ben.

Requirements

Rutin Kötelező fejléc (C) Szükséges fejléc (C++)
nextafter, nextafterf, nextafterl, _nextafterfnexttoward, nexttowardfnexttowardl <math.h> <math.h> vagy <cmath>
_nextafter <float.h> <float.h> vagy <cfloat>
nextafter makró, nexttoward makró <tgmath.h>

További kompatibilitási információkért lásd: Kompatibilitás.

Lásd még

matematikai és lebegőpontos támogatás
isnan, , _isnan_isnanf