다음을 통해 공유


_clear87, _clearfp

가져오고 부동 소수점 상태 단어를 지웁니다.

unsigned int _clear87( void );
unsigned int _clearfp( void );

반환 값

반환 되는 값의 비트를 호출 하기 전에 부동 소수점 상태를 나타내는 _clear87 또는 _clearfp.반환 되는 비트의 완전 한 정의 대 한 _clear87, float.h을 참조 하십시오.대부분의 수학 라이브러리 함수는 예상치 못한 결과가 8087/80287 상태 단어를 수정합니다.값이 반환 _clear87 및 _status87 부동 소수점 상태 단어의 알려진된 상태 간 적은 부동 소수점 연산이 수행 되는 신뢰할 수 있는 상태가 됩니다.

설명

_clear87 함수가 부동 소수점 상태 단어의 예외 플래그를 지웁니다 사용 중 비트를 0으로 설정한 및 상태 단어를 반환 합니다.부동 소수점 상태 단어의 8087/80287 상태와 부동 소수점 스택 오버플로 및 언더플로 8087/80287 예외 처리기를 검색 하는 다른 조건을 조합입니다.

_clearfp플랫폼 독립의 휴대용 버전은 _clear87 루틴입니다.동일 합니다 _clear87 인텔 (x86) 플랫폼 및 MIPS와 ALPHA로도 지 플랫폼입니다.부동 소수점 코드 MIPS 또는 ALPHA에 이식 되어 있는지 확인 하려면 사용 _clearfp.X 86에만 대상으로 하는 경우 플랫폼을 사용할 수 있습니다 _clear87 또는 _clearfp.

이러한 함수 사용 하 여 컴파일할 때 사용 되지 않습니다 /clr(공용 언어 런타임 컴파일) 또는 /clr:pure 공용 언어 런타임에서 부동 소수점 정밀도 지원 하기 때문입니다.

요구 사항

루틴

필수 헤더

_clear87

<float.h>

_clearfp

<float.h>

더 많은 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

예제

// crt_clear87.c
// compile with: /Od

// This program creates various floating-point 
// problems, then uses _clear87 to report on these problems.
// Compile this program with Optimizations disabled (/Od). 
// Otherwise the optimizer will remove the code associated with 
// the unused floating-point values.
//

#include <stdio.h>
#include <float.h>

int main( void )
{
   double a = 1e-40, b;
   float x, y;

   printf( "Status: %.4x - clear\n", _clear87()  );

   // Store into y is inexact and underflows:
   y = a;
   printf( "Status: %.4x - inexact, underflow\n", _clear87() );

   // y is denormal: 
   b = y;
   printf( "Status: %.4x - denormal\n", _clear87() );
}
  

해당 .NET Framework 항목

해당 사항 없음. 표준 C 함수를 호출할 수 있습니다 PInvoke. 자세한 내용은 플랫폼 호출 예제.

참고 항목

참조

부동 소수점 지원

_control87, _controlfp, __control87_2

_status87, _statusfp, _statusfp2