반응형
inff, inf
- inff, inf는 양의 무한대를 나타내는 부동 소수점 리터널 상수이다. double, float에서 사용하는 상수가 나뉘어지는데 밑 표를 보고 이히해보자.
double | float | |
양의 무한대 부동 소수점 리터널 상수 | inf | inff |
음의 무한대 부동 소수점 리터널 상수 | -inf | -inff |
inf
→ double 또는 float 데이터 타입에서 양의 무한대를 나타내는 표준 상수이다. 기본적으로 double 형식으로 양의 무한대를 나타냄. float 형식으로 양의 무한대를 나타내려면 명시적으로 ‘f’를 사용해야함.
- 즉, double 변수에 inf 또는 float 변수에 inff를 할당하면 해당 변수는 양의 무한대를 나타낸다.
inff
→ float 데이터 타입에서 양의 무한대(positive infinity)를 나타내는 부동 소수점 리터럴 상수이다.
- 즉, float 형식으로 양의 무한대를 나타낼 때 사용된다. 예를 들어, float 변수에 inff를 할당하면 해당 변수는 양의 무한대를 나타낸다.
예제
#include <iostream>
#include <cmath>
int main() {
double positive_infinity_double = INFINITY; // 기본적으로 double 형식의 양의 무한대
float positive_infinity_float = INFINITY; // 명시적으로 float 형식의 양의 무한대
std::cout << "양의 무한대 (double): " << positive_infinity_double << std::endl;
std::cout << "양의 무한대 (float): " << positive_infinity_float << std::endl;
return 0;
}
결과
양의 무한대 (double): inf
양의 무한대 (float): inf
NAN, nan
nan
- "nan" (소문자)은 부동 소수점 숫자에서 "NaN" (Not-a-Number) 값을 나타냄.
- 이 값은 부동 소수점 연산 중에 정의되지 않거나 정의할 수 없는 수치 결과를 나타냄. 이 값은 일반적으로 소문자로 표기됩니다.
NAN
- "NAN" (대문자)은 C와 C++에서 사용되는 특별한 식별자 또는 매크로로, 부동 소수점 NaN 값을 나타내는 데 사용됨.
- 이것은 컴파일러 또는 표준 라이브러리에서 지원하는 상수로, 대문자로 표기됩니다. 일반적으로 NAN은 "NaN" 값을 나타내며, 해당 부동 소수점 타입의 NaN 값을 생성하고 비교할 때 사용됩니다.
#include <iostream>
#include <cmath>
int main() {
double nanValue = NAN; // 부동 소수점 NaN 값을 나타내는 표준 상수
if (std::isnan(nanValue)) {
std::cout << "nanValue는 NaN입니다." << std::endl;
} else {
std::cout << "nanValue는 NaN이 아닙니다." << std::endl;
}
return 0;
}
결과
nanValue는 NaN입니다.
반응형
'CS' 카테고리의 다른 글
리터널, 상수 (0) | 2024.01.26 |
---|---|
이진 기수법을 통한 고정 소수점과 부동 소수점 (2) | 2024.01.24 |
이진 기수법(이진법) (1) | 2024.01.24 |
>>, << 쉬프트 연산 C++ (0) | 2023.12.02 |