Установить или получить текущую точность
#include <fpstatus.h>int fp_precision( int newprecision );
_FP_PREC_FLOAT
_FP_PREC_DOUBLE
_FP_PREC_EXTENDED
_FP_PREC_DOUBLE_EXTENDED
libm
Функция fp_precision() устанавливает или получает текущую точность вычислений с плавающей точкой, в зависимости от значения newprecision.
Если значение newprecision меньше 0
, то текущая точность; в противном случае - предыдущая точность.
![]() | Данная функция не возвращает специальное значение для того, чтобы установить, произошла ли ошибка. Если вам необходимо проверить, возникла ли ошибка, установите errno в 0 , вызовите функцию, и затем снова проверьте errno. |
#include <fpstatus.h>int main( void ){int ret;ret = fp_precision( -1 );printf( "Precision: " );if ( ret == _FP_PREC_FLOAT )printf( "Float \n" );else if ( ret == _FP_PREC_DOUBLE )printf( "Double \n" );else if ( ret == _FP_PREC_EXTENDED )printf( "Extended \n" );else if ( ret == _FP_PREC_DOUBLE_EXTENDED )printf( "128 Bit \n" );else if ( ret == _FP_PREC_EXTENDED )printf( "Extended \n" );else if ( ret == _FP_PREC_DOUBLE_EXTENDED )printf( "128 Bit \n" );elseprintf( "Error \n" );return (0);}
ЗОСРВ «Нейтрино»
fp_exception_mask(), fp_exception_value(), fp_rounding(), fp_setenv()
Предыдущий раздел: Описание API математической библиотеки