Standard library header <fenv.h> (C99)
From cppreference.net
이 헤더는 floating-point environment 라이브러리의 일부입니다.
목차 |
타입
|
헤더 파일에 정의됨
<fenv.h>
|
|
| fenv_t | 전체 부동소수점 환경을 나타내는 타입 |
| fexcept_t | 모든 부동소수점 상태 플래그를 집합적으로 나타내는 타입 |
함수
|
(C99)
|
지정된 부동 소수점 상태 플래그를 지움
(함수) |
|
(C99)
|
지정된 부동 소수점 상태 플래그 중 설정된 것을 확인함
(함수) |
|
(C99)
|
지정된 부동 소수점 예외를 발생시킴
(함수) |
|
(C99)
(C99)
|
지정된 부동 소수점 상태 플래그의 상태를 부동 소수점 환경에서 복사하거나 부동 소수점 환경으로 복사함
(함수) |
|
(C99)
(C99)
|
반올림 방향을 얻거나 설정함
(함수) |
|
(C99)
|
현재 부동 소수점 환경을 저장하거나 복원함
(함수) |
|
(C99)
|
환경을 저장하고, 모든 상태 플래그를 지우며, 이후 모든 오류를 무시함
(함수) |
|
(C99)
|
부동 소수점 환경을 복원하고 이전에 발생한 예외를 다시 발생시킴
(함수) |
매크로
|
부동소수점 예외
(매크로 상수) |
|
|
부동소수점 반올림 방향
(매크로 상수) |
|
|
(C99)
|
기본 부동소수점 환경
(매크로 상수) |
시놉시스
#define __STDC_VERSION_FENV_H__ 202311L #define FE_ALL_EXCEPT /* 설명 참조 */ #define FE_DIVBYZERO /* 설명 참조 */ #define FE_INEXACT /* 설명 참조 */ #define FE_INVALID /* 설명 참조 */ #define FE_OVERFLOW /* 설명 참조 */ #define FE_UNDERFLOW /* 설명 참조 */ #define FE_DOWNWARD /* 설명 참조 */ #define FE_TONEARESTFROMZERO /* 설명 참조 */ #define FE_TONEAREST /* 설명 참조 */ #define FE_TOWARDZERO /* 설명 참조 */ #define FE_UPWARD /* 설명 참조 */ #define FE_DFL_ENV /* 설명 참조 */ #define FE_DFL_MODE /* 설명 참조 */ #define fenv_t /* 설명 참조 */ #define fexcept_t /* 설명 참조 */ #define femode_t /* 설명 참조 */ #pragma STDC FENV_ACCESS /*on-off-switch*/ #pragma STDC FENV_ROUND direction #pragma STDC FENV_ROUND FE_DYNAMIC // 함수들 int feclearexcept(int excepts); int fegetexceptflag(fexcept_t* flagp, int excepts); int feraiseexcept(int excepts); int fesetexcept(int excepts); int fesetexceptflag(const fexcept_t* flagp, int excepts); int fetestexceptflag(const fexcept_t* flagp, int excepts); int fetestexcept(int excepts); int fegetmode(femode_t* modep); int fegetround(void); int fesetmode(const femode_t* modep); int fesetround(int rnd); int fegetenv(fenv_t* envp); int feholdexcept(fenv_t* envp); int fesetenv(const fenv_t* envp); int feupdateenv(const fenv_t* envp); // 구현이 __STDC_IEC_60559_DFP__를 정의하는 경우에만: #define FE_DEC_DOWNWARD /* 구현 정의 */ #define FE_DEC_TONEARESTFROMZERO /* 구현 정의 */ #define FE_DEC_TONEAREST /* 구현 정의 */ #define FE_DEC_TOWARDZERO /* 구현 정의 */ #define FE_DEC_UPWARD /* 구현 정의 */ #pragma STDC FENV_DEC_ROUND /*dec-direction*/ int fe_dec_getround(void); int fe_dec_setround(int rnd); // 구현이 F.2.2의 권장 사례를 따르는 경우에만: #define FE_SNANS_ALWAYS_SIGNAL /* 구현 정의 */