반응형
Objective-C-nan에 대한 플로트 검사
float slope
가끔 0으로 나누기가 발생하기 때문에 출력 될 때 가끔 nan 값을 갖는 변수 ( )가 있습니다.
그럴 때 if-else를 시도하고 있습니다. 어떻게 할 수 있습니까? if (slope == nan)
작동하지 않는 것 같습니다.
다소 동등한 두 가지 방법 :
if (slope != slope) {
// handle nan here
}
또는
#include <math.h>
...
if (isnan(slope)) {
// handle nan here
}
( man isnan
더 많은 정보를 제공하거나 C 표준에서 모든 내용을 읽을 수 있습니다)
또는 나누기를 수행하기 전에 분모가 0임을 감지 할 수 있습니다 (또는 다른 계산을 수행하는 대신 기울기에서 사용하게 atan2
될 경우 사용 atan
).
자신을 NaN
포함하여 동일하지 않습니다 NaN
. 그래서 확인하십시오 x != x
.
if(isnan(slope)) {
yourtextfield.text = @"";
//so textfield value will be empty string if floatvalue is nan
}
else
{
yourtextfield.text = [NSString stringWithFormat:@"%.1f",slope];
}
이것이 당신을 위해 일하기를 바랍니다.
Swift에서는 slope.isNaN
NaN인지 확인 해야합니다 .
참고 URL : https://stackoverflow.com/questions/3471988/objective-c-float-checking-for-nan
반응형
'programing' 카테고리의 다른 글
Rails의 컨트롤러에서 레코드가 있는지 확인하십시오. (0) | 2020.10.13 |
---|---|
Django : 인증 사용자를 모델로 가져 오기 (0) | 2020.10.13 |
SQL 쿼리 : 테이블에서 최신 N을 제외한 모든 레코드를 삭제 하시겠습니까? (0) | 2020.10.13 |
기기에 카메라가 있는지 확인 하시겠습니까? (0) | 2020.10.13 |
문자열 바꾸기 방법이 문자를 바꾸지 않습니다. (0) | 2020.10.13 |