Spec-Zone.ru › C++

FLT_EVAL_METHOD

Определено в заголовке <cfloat>
#define FLT_EVAL_METHOD /* implementation defined */
(с C++11)

Указывает точность, в которой выполняются все операции с плавающей точкой, кроме присваивания и преобразования типов.

Значение Объяснение
отрицательные значения, кроме -1 поведение определяется реализацией
-1 точность по умолчанию неизвестна
0 все операции и константы вычисляются в диапазоне и точности используемого типа. Кроме того, float_t и double_t эквивалентны float и double соответственно
1 все операции и константы вычисляются в диапазоне и точности double. Кроме того, оба float_t и double_t эквивалентны double
2 все операции и константы вычисляются в диапазоне и точности long double. Кроме того, оба float_t и double_t эквивалентны long double

Примечания

Независимо от значения FLT_EVAL_METHOD, любое выражение с плавающей точкой может быть сжато, то есть вычисляться так, как будто все промежуточные результаты имеют бесконечный диапазон и точность (если #pragma STDC FP_CONTRACT выключено)

Преобразование типов и присваивание удаляют любой избыточный диапазон и точность: это моделирует действие сохранения значения из регистра FPU с расширенной точностью в стандартное местоположение памяти.

См. также

Документация C для FLT_EVAL_METHOD

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

Spec-Zone.ru

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