Visual Studio Community 2019 v16.4.2 と 64 ビット Win10 に付属する最新のものを使用します。
さまざまなデータ型の制限をテストしているときに奇妙なバグが発生しましたが、numeric_limits は double と long double の最小/最大値を区別できません。デフォルトの GNU Mac ツール チェーンで NetBeans を使用して、より合理的な結果を表示します。
// Type limits: float
std::cout
<< "MIN float " << numeric_limits<float>::min() << "\n"
<< "MAX float " << numeric_limits<float>::max() << "\n"
<< "MIN double " << numeric_limits<double>::min() << "\n"
<< "MAX double " << numeric_limits<double>::max() << "\n"
<< "MIN long double " << numeric_limits<long double>::min() << "\n"
<< "MAX long double " << numeric_limits<long double>::max() << "\n";
コンソール出力
MIN float 1.17549e-38 MAX float 3.40282e+38 MIN double 2.22507e-308 MAX double 1.79769e+308 MIN long double 2.22507e-308 // NetBeans on Mac 3.3621e-4932 MAX long double 1.79769e+308 // NetBeans on Mac 1.18973e+4932