Skip to content

Latest commit

 

History

History
66 lines (50 loc) · 2.18 KB

flt_has_subnorm.md

File metadata and controls

66 lines (50 loc) · 2.18 KB

FLT_HAS_SUBNORM

  • cfloat[meta header]
  • macro[meta id-type]
  • cpp17[meta cpp]
# define FLT_HAS_SUBNORM implementation-defined

概要

FLT_HAS_SUBNORM は、float型における非正規化数のサポート状況を表すマクロである。

名前 非正規化数のサポート状況
-1 indeterminable 許可するか判定できない
0 absent 許可しない
1 present 許可する

-1は、浮動小数点操作が、非正規化数の表現をゼロか非ゼロかで一貫して解釈しない場合に、判定不能として表される。

0は、型のフォーマットに非正規化数が含まれる場合でも、正規化されていない浮動小数点数の入力から結果として非正規化数を生成しない場合に、サポートされていないと判定される。

std::numeric_limits<float>::has_denormと等しい。

備考

  • このマクロは、非正規化数を表現できる場合の、浮動小数点数の正の最小値を表すFLT_TRUE_MINのために定義された

#include <iostream>
#include <cfloat>

int main()
{
  std::cout << DBL_HAS_SUBNORM << std::endl;
  std::cout << FLT_HAS_SUBNORM << std::endl;
  std::cout << LDBL_HAS_SUBNORM << std::endl;
}
  • FLT_HAS_SUBNORM[color ff0000]
  • DBL_HAS_SUBNORM[link dbl_has_subnorm.md]
  • LDBL_HAS_SUBNORM[link ldbl_has_subnorm.md]

出力例

1
1
1

バージョン

言語

  • C++17

処理系

参照