rint
, rintf
, rintl
부동 소수점 값을 부동 소수점 형식의 가장 가까운 정수로 반올림합니다.
구문
double rint( double x );
float rintf( float x );
long double rintl( long double x );
#define rint(X) // Requires C11 or higher
float rint( float x ); // C++ only
long double rint( long double x ); // C++ only
매개 변수
x
반올림할 부동 소수점 값입니다.
반환 값
rint
함수는 x
에 가장 가까운 정수를 나타내는 부동 소수점 값을 반환합니다. 중간값은 nearbyint
함수와 마찬가지로 부동 소수점 반올림 모드의 현재 설정에 따라 반올림됩니다. nearbyint
함수와 달리 rint
함수는 결과가 인수의 값과 다른 경우 FE_INEXACT
부동 소수점 예외를 일으킬 수 있습니다. 오류 반환이 없습니다.
입력 | SEH 예외 | _matherr 예외 |
---|---|---|
± INF, QNaN, IND | 없음 | 없음 |
Denormals | EXCEPTION_FLT_UNDERFLOW |
없음 |
설명
C++에서는 오버로드를 허용하므로 rint
및 float
값을 사용 및 반환하는 long double
의 오버로드를 호출할 수 있습니다. C 프로그램에서 tgmath.h 매크로를 <사용하여 이 함수 rint
를 호출하지 않는 한 항상 double
.>
tgmath.h>rint()
매크로를 <사용하는 경우 인수 형식에 따라 선택한 함수 버전이 결정됩니다. 자세한 내용은 형식 제네릭 수학을 참조하세요.
기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT의 전역 상태를 참조하세요.
요구 사항
함수 | C 헤더 | C++ 헤더 |
---|---|---|
rint , rintf , rintl |
<math.h> | <cmath> |
rint 매크로 |
<tgmath.h> |
호환성에 대한 자세한 내용은 호환성을 참조하세요.
예시
// crt_rint.c
// Build with: cl /W3 /Tc crt_rint.c
// This example displays the rounded results of
// the floating-point values 2.499999, -2.499999,
// 2.8, -2.8, 2.5 and -2.5.
#include <math.h>
#include <stdio.h>
int main( void )
{
double x = 2.499999;
float y = 2.8f;
long double z = 2.5;
printf("rint(%f) is %.0f\n", x, rint (x));
printf("rint(%f) is %.0f\n", -x, rint (-x));
printf("rintf(%f) is %.0f\n", y, rintf(y));
printf("rintf(%f) is %.0f\n", -y, rintf(-y));
printf("rintl(%Lf) is %.0Lf\n", z, rintl(z));
printf("rintl(%Lf) is %.0Lf\n", -z, rintl(-z));
}
rint(2.499999) is 2
rint(-2.499999) is -2
rintf(2.800000) is 3
rintf(-2.800000) is -3
rintl(2.500000) is 3
rintl(-2.500000) is -3
참고 항목
수학 및 부동 소수점 지원
ceil
, ceilf
, ceill
floor
, floorf
, floorl
fmod
, fmodf
lrint
, lrintf
, lrintl
, llrint
, llrintf
, llrintl
lround
, lroundf
, lroundl
, llround
, llroundf
, llroundl
nearbyint
, nearbyintf
, nearbyintl
rint
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기