std::numeric_limits<T>::min_exponent10
来自cppreference.com
| (C++11 前) | ||
| |
(C++11 起) | |
std::numeric_limits<T>::min_exponent10 的值是满足 10n
是浮点数类型 T 的合法正规值的最低负数 n。
标准特化
T
|
std::numeric_limits<T>::min_exponent10 的值
|
/* 未特化 */
|
0
|
bool
|
0
|
char
|
0
|
signed char
|
0
|
unsigned char
|
0
|
wchar_t
|
0
|
char8_t (C++20 起)
|
0
|
char16_t (C++11 起)
|
0
|
char32_t (C++11 起)
|
0
|
short
|
0
|
unsigned short
|
0
|
int
|
0
|
unsigned int
|
0
|
long
|
0
|
unsigned long
|
0
|
long long (C++11 起)
|
0
|
unsigned long long (C++11 起)
|
0
|
float
|
FLT_MIN_10_EXP |
double
|
DBL_MIN_10_EXP |
long double
|
LDBL_MIN_10_EXP |
示例
演示对于 float 类型的 min_exponent、min_exponent10、min() 及 radix 的关系:
运行此代码
#include <iostream>
#include <limits>
int main()
{
std::cout << "min() = " << std::numeric_limits<float>::min() << '\n'
<< "min_exponent10 = " << std::numeric_limits<float>::min_exponent10 << '\n'
<< std::hexfloat << '\n'
<< "min() = " << std::numeric_limits<float>::min() << '\n'
<< "min_exponent = " << std::numeric_limits<float>::min_exponent << '\n';
}
输出:
min() = 1.17549e-38
min_exponent10 = -37
min() = 0x1p-126
min_exponent = -125
参阅
[静态] |
底的该数次幂是合法正规浮点数的最小负数加一 (公开静态成员常量) |
[静态] |
底的该数次幂是合法有限浮点数的最大整数加一 (公开静态成员常量) |
[静态] |
10 的该数次幂是合法有限浮点数的最大整数 (公开静态成员常量) |