Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vrátí další reprezentovatelnou hodnotu s plovoucí desetinnou čárkou.
Syntaxe
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> */
Parametry
x
Hodnota s plovoucí desetinou čárkou, od které se má začít.
y
Hodnota s plovoucí desetinou čárkou, ke které se má přejít.
Vrácená hodnota
Vrátí další reprezentovatelnou hodnotu s plovoucí desetinnou čárkou návratového typu za x směrem .y Pokud x a y jsou rovny, funkce vrátí y, převede na návratový typ bez výjimky aktivované. Pokud x není rovno ya výsledek je denormální nebo nula, FE_UNDERFLOW nastaví se stavy výjimky s FE_INEXACT plovoucí desetinou čárkou a vrátí se správný výsledek. Pokud je hodnota x NAN nebo y nan, je návratová hodnota jednou ze vstupních sítí NAN. Pokud x je konečný a výsledek je nekonečný nebo není reprezentovatelný v typu, vrátí se správně podepsané nekonečno nebo NAN, FE_OVERFLOWFE_INEXACT a stavy výjimky s plovoucí desetinnou čárkou jsou nastaveny a errno je nastavena na ERANGE.
Poznámky
nextafter Rodiny nexttoward funkcí jsou ekvivalentní, s výjimkou typu parametru y. Pokud x a y jsou rovny, vrácená hodnota se y převede na návratový typ.
Vzhledem k tomu, že C++ umožňuje přetížení, pokud zahrnete <cmath> , můžete volat přetížení nextafter a nexttoward návrat float a long double typy. V programu jazyka C, pokud k volání této funkce nepoužíváte <tgmath.h> makro, nextafter a nexttoward vždy se vraťte double.
Pokud použijete nextafter makro nebo nexttoward z <tgmath.h>něho , typ argumentu určuje, která verze funkce je vybrána. Podrobnosti najdete v tématu Matematika pro obecné typy.
Funkce _nextafter a _nextafterf funkce jsou specifické pro Microsoft. Funkce _nextafterf je k dispozici pouze při kompilaci pro platformu x64.
Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.
Požadavky
| Rutina | Povinná hlavička (C) | Povinná hlavička (C++) |
|---|---|---|
nextafter, nextafterf, nextafterl, _nextafterf, nexttoward, , nexttowardfnexttowardl |
<math.h> |
<math.h> nebo <cmath> |
_nextafter |
<float.h> |
<float.h> nebo <cfloat> |
nextafter makro, nexttoward makro |
<tgmath.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Viz také
Podpora pro matematiku a plovoucí desetinou čárku
isnan, , _isnan_isnanf