C ++에서 Long Double의 정밀도는 얼마입니까?
-
20-08-2019 - |
문제
누구든지 정밀도를 찾는 방법을 알고 있습니까? long double
특정 플랫폼에서? 나는 17 자리 자릿수 후에 정밀도를 잃는 것처럼 보인다. double
. 나는 그 이후로 더 많은 것을 기대할 것입니다 double
내 플랫폼에서 8 바이트로 표시되며 long double
12 바이트입니다.
당신이 묻기 전에, 이것은 프로젝트 Euler를위한 것입니다. 하다 17 자리 이상이 필요합니다. :)
편집하다: 빠른 답변에 감사드립니다. 방금 사용하여 18 자리 숫자 만 얻을 수 있음을 확인했습니다. long double
내 시스템에서.
해결책
당신은 함께 찾을 수 있습니다 std::numeric_limits
:
#include <iostream> // std::cout
#include <limits> // std::numeric_limits
int main(){
std::cout << std::numeric_limits<long double>::digits10 << std::endl;
}
다른 팁
당신이 사용할 수있는 u003Ccfloat>. 구체적으로:
LDBL_DIG
제휴하지 않습니다 StackOverflow