fesetexceptflag
현재 부동 소수점 환경에서 지정된 부동 소수점 상태 플래그를 설정합니다.
구문
int fesetexceptflag(
const fexcept_t *pstatus,
int excepts
);
매개 변수
pstatus
예외 상태 플래그를 fexcept_t
설정할 값을 포함하는 개체에 대한 포인터입니다. 개체는 이전 호출 fegetexceptflag
에서 설정할 수 있습니다.
excepts
설정할 부동 소수점 예외 상태 플래그입니다.
반환 값
모든 지정된 예외 상태 플래그가 성공적으로 설정되면 0을 반환합니다. 그렇지 않으면 0이 아닌 값을 반환합니다.
설명
fesetexceptflag
함수는 excepts
를 통해 지정한 부동 소수점 예외 상태 플래그의 상태를 pstatus
가 가리키는 fexcept_t
개체에 설정된 해당 값으로 설정합니다. 예외가 발생하지 않습니다. pstatus
포인터가 유효한 fexcept_t
개체를 가리켜야 합니다. 그렇지 않으면 후속 동작이 정의 해제됩니다. 함수는 fesetexceptflag
fenv.h>에 정의된 <다음에서 excepts
이러한 예외 매크로 값을 지원합니다.
예외 매크로 | 설명 |
---|---|
FE_DIVBYZERO |
초기 부동 소수점 작업에서 특이성 또는 극 오류가 발생했습니다. 무한대 값이 생성되었습니다. |
FE_INEXACT |
함수가 초기 부동 소수점 작업의 저장된 결과를 강제로 반올림했습니다. |
FE_INVALID |
초기 부동 소수점 작업에서 도메인 오류가 발생했습니다. |
FE_OVERFLOW |
범위 오류가 발생했습니다. 초기 부동 소수점 작업 결과가 표시하기에 너무 큽니다. |
FE_UNDERFLOW |
초기 부동 소수점 작업 결과가 완전히 정확하게 표시하기에 너무 작습니다. 비정상적인 값이 생성되었습니다. |
FE_ALL_EXCEPT |
모든 지원되는 부동 소수점 예외의 비트 OR입니다. |
excepts
인수는 0, 지원되는 부동 소수점 예외 매크로 중 하나 또는 매크로 중 두 개 이상의 비트 OR일 수 있습니다. 기타 인수 값의 결과는 정의 해제됩니다.
이 함수를 사용하려면 호출 전에 #pragma fenv_access(on)
지시문을 사용하여 액세스를 방지할 수 있는 부동 소수점 최적화를 꺼야 합니다. 자세한 내용은 fenv_access
를 참조하세요.
요구 사항
함수 | C 헤더 | C++ 헤더 |
---|---|---|
fesetexceptflag |
<fenv.h> | <cfenv> |
호환성에 대한 자세한 내용은 호환성을 참조하세요.