매우 기본적인 계산을 수행하고 if.. statement
의 이중 값을 비교할 때 이상한 결과를 얻습니다. 첨부 된 스크린 샷을 참조하십시오. 이상한 결과를 얻으려면 double 값 비교 iOS
나는 빨간색 마커로 변수 값을 표시했습니다. 변수 totalSliceValue
의 값이 100이고 값을 100.0
과 비교했을 때 TRUE
을 반환하지만 100이 100보다 크지 않다는 것을 알 수 있습니다.
아무에게도 이것을 설명 할 수 있습니까? 내 코드에 버그가 있거나 컴파일러에 문제가 있습니다.
미리 감사드립니다.
정말 '100.0000001'과 같은 값이 아닌가요? 이것을보십시오 :'NSLog (@ "totalSliceValue = % .8f", totalSliceValue); – rmaddy
@rmaddy : .8f로 시도하고 '100.00000000'이되었습니다. –
맞습니다. .16f로 시도하고 값을 인쇄하면 100.0000000000000142가됩니다. –