float가 정수인지 확인 float변수에 정수 값이 포함되어 있는지 어떻게 확인할 수 있습니까? 지금까지 다음을 사용했습니다. float f = 4.5886; if (f-(int)f == 0) printf("yes\n"); else printf("no\n"); 그러나 더 나은 해결책이 있는지 또는 이것이 어떤 (또는 많은) 단점이 있는지 궁금합니다. 이미 주어진 훌륭한 답변 외에도 ceilf(f) == f또는 을 사용할 수도 있습니다 floorf(f) == f. 두 표현식 은 모두 정수 true이면 반환 합니다 f. 또한 falseNaN ( NaN은 항상 같지 않음을 비교 함 ) 및 true± 무한대에 대해 반환 하며 floorf()/ ceilf()return floats 때문에 잘린 결과를 유지하는 ..