Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Возвращает следующее представимое значение с плавающей запятой.
Синтаксис
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> */
Параметры
x
Начальное значение с плавающей запятой.
y
Следующее значение с плавающей запятой.
Возвращаемое значение
Возвращает следующее представимое значение с плавающей запятой возвращаемого типа, следующее за значением x в направлении значения y. Если x и y равны, функция возвращается y, преобразованная в тип возвращаемого значения без исключения. Если x значение равно y, и результат является денормальным или нулевым, FE_UNDERFLOW задаются состояния исключения с FE_INEXACT плавающей запятой и возвращается правильный результат. Если параметр x или y имеет значение NAN, то возвращаемое значение является одним из входных значений NaN. Если x конечный, и результат является бесконечным или не представляется в типе, возвращается правильно подписанный бесконечность или NAN, FE_OVERFLOWFE_INEXACT и состояния исключения с плавающей запятой задаются и errno имеют значение ERANGE.
Замечания
Семейства функций nextafter и nexttoward эквивалентны за исключением типа параметра y. Если значения x и y равны, возвращается значение y, преобразованное в возвращаемый тип.
Так как C++ разрешает перегрузку, при включении <cmath> можно вызывать перегрузки nextafter и nexttoward возвращать float и long double типы. Если макрос не используется <tgmath.h> для вызова этой функции и nextafternexttoward всегда возвращается doubleв программе C.
Если вы используете nextafter или nexttoward макрос из <tgmath.h>, тип аргумента определяет, какая версия функции выбрана. Дополнительные сведения см . в разделе "Математика с универсальным типом".
_nextafter Функции _nextafterf относятся к корпорации Майкрософт. Функция _nextafterf доступна только при компиляции для x64.
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
| Маршрут | Обязательный заголовок (C) | Обязательный заголовок (C++) |
|---|---|---|
nextafter, nextafterf, nextafterl_nextafterfnexttowardnexttowardfnexttowardl |
<math.h> |
<math.h> или <cmath> |
_nextafter |
<float.h> |
<float.h> или <cfloat> |
nextafter макрос, nexttoward макрос |
<tgmath.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
См. также
Поддержка математических и плавающих точек
isnan, , _isnan_isnanf