- cfloat[meta header]
- macro[meta id-type]
- cpp17[meta cpp]
- [mathjax enable]
# define DBL_TRUE_MIN implementation-defined
double
の正の最小値を表すマクロ。
このマクロは、非正規化数を含む、その環境での正の最小値を表すマクロである。非正規化数を表現できない、または非正規化数の有無を判定できない場合は、その型の最小正規化数以下の正数を表す。
std::numeric_limits
<double>::
denorm_min
()
と等しい。
- 規格で 1E-37($10^{-37}$)以下であることが規定されている。
#include <iostream>
#include <iomanip>
#include <cfloat>
int main()
{
std::cout << std::setprecision(DBL_DIG);
std::cout << DBL_HAS_SUBNORM << std::endl;
std::cout << DBL_MIN << std::endl;
std::cout << DBL_TRUE_MIN << std::endl;
}
- DBL_TRUE_MIN[color ff0000]
- sts::setprecision[link /reference/iomanip/setprecision.md]
- DBL_DIG[link dbl_dig.md]
- DBL_HAS_SUBNORM[link dbl_has_subnorm.md]
- DBL_MIN[link dbl_min.md]
1
2.2250738585072e-308
4.94065645841247e-324
- C++17
- Clang: 8.0
- GCC: (9.1時点で実装なし)
- Visual C++: ??