Spec-Zone.ru › C++

Стандартная библиотека заголовочный файл <cfenv> (C++11)

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

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

Типы

fenv_t Тип, представляющий всю среду с плавающей запятой
fexcept_t Тип, представляющий все флаги состояния с плавающей запятой совместно

Функции

feclearexcept
(C++11)
очищает указанные флаги состояния с плавающей запятой
(функция)
fetestexcept
(C++11)
определяет, какие из указанных флагов состояния с плавающей запятой установлены
(функция)
feraiseexcept
(C++11)
генерирует указанные исключения с плавающей запятой
(функция)
fegetexceptflagfesetexceptflag
(C++11)(C++11)
копирует состояние указанных флагов состояния с плавающей запятой из или в среду с плавающей запятой
(функция)
fegetroundfesetround
(C++11)(C++11)
получает или устанавливает направление округления
(функция)
fegetenvfesetenv
(C++11)
сохраняет или восстанавливает текущую среду с плавающей запятой
(функция)
feholdexcept
(C++11)
сохраняет среду, очищает все флаги состояния и игнорирует все будущие ошибки
(функция)
feupdateenv
(C++11)
восстанавливает среду с плавающей запятой и генерирует ранее сгенерированные исключения
(функция)

Макросы

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

Синтаксис

namespace std {
    // types
    typedef /* object type */ fenv_t;
    typedef /* object type */ fexcept_t;
 
    // functions
    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 должен быть целочисленного типа он является типом объекта

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/header/cfenv

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API