如何验证C++中的特殊值

LCF*_*ion 2 c++ nan

如果在C++中我得到以下任何值,如何验证或比较它们?

float pinf = std::numeric_limits<float>::infinity();
double dpinf = std::numeric_limits<double>::infinity();

float ninf = -std::numeric_limits<float>::infinity();
float NaN = std::numeric_limits<float>::quiet_NaN();
float nNaN = -std::numeric_limits<float>::quiet_NaN();
double dNaN = std::numeric_limits<double>::quiet_NaN();
Run Code Online (Sandbox Code Playgroud)

Ker*_* SB 5

您可以使用std::fpclassify或任何相关的功能.