Namespaces
Variants

Standard library header <cfenv> (C++11)

From cppreference.net
Standard library headers

Этот заголовок изначально находился в стандартной библиотеке C как <fenv.h> .

Этот заголовок является частью библиотеки окружения для чисел с плавающей запятой .

Содержание

Типы

fenv_t
(C++11)
тип, представляющий всю среду с плавающей запятой
(typedef)
fexcept_t
(C++11)
тип, представляющий все флаги состояния с плавающей запятой в совокупности
(typedef)

Функции

очищает указанные флаги состояния чисел с плавающей запятой
(функция)
определяет, какие из указанных флагов состояния чисел с плавающей запятой установлены
(функция)
возбуждает указанные исключения чисел с плавающей запятой
(функция)
копирует состояние указанных флагов состояния чисел с плавающей запятой из или в окружение чисел с плавающей запятой
(функция)
(C++11) (C++11)
получает или устанавливает направление округления
(функция)
сохраняет или восстанавливает текущее окружение чисел с плавающей запятой
(функция)
сохраняет окружение, очищает все флаги состояния и игнорирует все будущие ошибки
(функция)
восстанавливает окружение чисел с плавающей запятой и возбуждает ранее возбужденные исключения
(функция)

Макросы

исключения с плавающей запятой
(макроконстанта)
направление округления чисел с плавающей запятой
(макроконстанта)
(C++11)
окружение с плавающей запятой по умолчанию
(макроконстанта)

Синопсис

#define FE_ALL_EXCEPT /* см. описание */
#define FE_DIVBYZERO /* см. описание */    // optional
#define FE_INEXACT /* см. описание */      // optional
#define FE_INVALID /* см. описание */      // optional
#define FE_OVERFLOW /* см. описание */     // optional
#define FE_UNDERFLOW /* см. описание */    // optional
#define FE_DOWNWARD /* см. описание */     // optional
#define FE_TONEAREST /* см. описание */    // optional
#define FE_TOWARDZERO /* см. описание */   // optional
#define FE_UPWARD /* см. описание */       // optional
#define FE_DFL_ENV /* см. описание */
namespace std {
    // типы
    using fenv_t    = /* тип объекта */;
    using fexcept_t = /* тип объекта */;
    // функции
    int feclearexcept(int except);
    int fegetexceptflag(fexcept_t* pflag, int except);
    int feraiseexcept(int except);
    int fesetexceptflag(const fexcept_t* pflag, int except);
    int fetestexcept(int except);
    int fegetround(void);
    int fesetround(int mode);
    int fegetenv(fenv_t* penv);
    int feholdexcept(fenv_t* penv);
    int fesetenv(const fenv_t* penv);
    int feupdateenv(const fenv_t* penv);
}

Отчёты о дефектах

Следующие отчеты об изменениях поведения, влияющие на дефекты, были применены ретроактивно к ранее опубликованным стандартам C++.

DR Применяется к Поведение в опубликованной версии Корректное поведение
LWG 3905 C++11 std::fexcept_t должен быть целочисленным типом это объектный тип