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>

호환성에 대한 자세한 내용은 호환성을 참조하세요.

참고 항목

사전순 함수 참조
fegetexceptflag