내가 읽고 코드의 섹션이 있습니다.는 C에서 오답 ++
-5.000000000000722771452063564190e-01 2.710505431213761085018632002175e-20
-5.000000000000722771452063564190e-01
이해가되지 않습니다 :
문제는 이것의 결과는 사실에서 비롯됩니다. val2가 val1에 추가되지 않는 것으로 보이지만, val1
의 분수 부분에는 분명히 val2
이 추가 될 수있는 충분한 정보가 있습니다.
나는 어떤 문제가 있습니까?
저는 GCC 4.2를 사용하고 있습니다. G ++에서 IEEE 4 배 정밀도 형식을 사용합니까? 또는 다른 문제 (이 문제를 설명 할 수있는 80 비트 확장 정밀도와 같은 이유는 무엇입니까?).
(첨가 생성 된 차분 진 긴 이중 포맷에 의해 표현의 범위를 벗어난다 때문에) 뭐죠'의 실제 값 val1' &'val2' ?? – perilbrain
필수 Goldberg 링크 : http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html –
실행중인 아키텍처 및 운영 체제는 무엇입니까? –