C++ 参考手册

static const bool is_iec559;
(C++11 前)
static constexpr bool is_iec559;
(C++11 起)

std::numeric_limits<T>::is_iec559 的值对于所有符合 IEC 559 ( IEEE 754 )标准要求的浮点类型 Ttrue 。若 std::numeric_limits<T>::is_iec559true ,则 std::numeric_limits<T>::has_infinitystd::numeric_limits<T>::has_quiet_NaNstd::numeric_limits<T>::has_signaling_NaN 亦为 true

标准特化

 
T std::numeric_limits<T>::is_iec559 的值
/* non-specialized */ false
bool false
char false
signed char false
unsigned char false
wchar_t false
char8_t false
char16_t false
char32_t false
short false
unsigned short false
int false
unsigned int false
long false
unsigned long false
long long false
unsigned long long false
float 通常为 true
double 通常为 true
long double 通常为 true

参阅

鉴别能表示特殊值“正无穷大”的浮点类型
(公开静态成员常量)
鉴别能表示特殊值“安静的非数”( NaN )的浮点类型
(公开静态成员常量)
鉴别能表示特殊值“发信的非数”( NaN )的浮点类型
(公开静态成员常量)