isless() 함수는 첫 번째 인자가 두 번째 인자보다 작은지를 검사하는 데 사용되는 수학 함수입니다. C 언어에서는 math.h 헤더 파일에 선언되어 있으며, 조건이 참일 경우 true(참)를 반환하고 그렇지 않으면 false(거짓)를 반환합니다.
이 함수는 일반적인 비교 연산자(<)와 달리 부동소수점 특수 값인 NaN(Not a Number)을 안전하게 처리할 수 있다는 장점이 있습니다. 일반적인 비교 연산자로 NaN을 비교하면 예측하기 어려운 결과가 나올 수 있지만, isless() 같은 매크로 함수는 NaN이 포함된 경우에도 false를 반환하여 오류 없이 동작합니다.
isless() 함수 문법
bool isless(value1, value2);
매개변수 설명:
value1 − value2와 비교할 첫 번째 인자입니다.
value2 − value1이 이 값보다 작은지 검사하는 기준이 되는 두 번째 인자입니다.
isless() 함수 예제 코드
다음은 C 언어에서 isless() 함수를 활용한 간단한 예제입니다. 정수형 변수와 실수형 변수를 비교하는 코드입니다.
#include<stdio.h>
#include<math.h>
int main() {
int val1 = 48;
float val2 = 324.32;
if(isless(val1, val2))
printf("val1은 val2보다 작습니다\n");
else
printf("val1은 val2보다 작지 않습니다");
return 0;
}
실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
val1은 val2보다 작습니다
예제에서 val1(48)은 val2(324.32)보다 작기 때문에 isless() 함수가 true를 반환하고, if문의 첫 번째 분기가 실행되어 해당 메시지가 출력됩니다.
정리
isless() 함수는 두 값을 비교할 때 유용하며, 특히 부동소수점 연산에서 NaN과 같은 특수한 상황을 고려해야 하는 프로그램에서 안정적인 비교를 보장합니다. C99 표준부터 도입된 이 함수는 math.h를 포함하기만 하면 별도 설정 없이 바로 사용할 수 있습니다.