long double
의 절대 값을 갖고 싶습니다.C++ fabs (long double) 컴파일러 경고
이 <cmath>
또는 <math.h>
에 따르면, 다음은 볼 수 있습니다 :
double fabs (double x);
float fabs (float x);
long double fabs (long double x);
그러나 long double ld = fabs(static_cast<long double>(0));
을 할 때, 나는 (LLVM 7.1) 경고 다음 얻을 :
Absolute value function 'fabs' given an argument of type 'long double' but has parameter of type 'double' which may cause truncation of value
어떻게?
long double
의 절대 값을 얻는 다른 방법은 있습니까?
편집 :
std::abs
가 결국 일을했다. 그러나 std::fabs
하지 않았습니다. 주석에서 지적했듯이 이것은 부적합한 구현으로 인한 것일 수 있습니다.
공용 헤더에서 기능이 구현되었는지 확인 했습니까? 아니면 문서 만 확인 했습니까? – JVApen
표준이라고 가정하고 문서 만. 외관상으로는, 나는 틀렸다 (?) – Stingery
아마'std :: fabs' 또는'std :: abs'를 시도 할 것인가? –