CFPV -- 浮動小数点値の比較(Comparing Floating-Point Values)

提供: RAD Studio
移動先: 案内検索

C++ 検査 への移動

説明

浮動小数点数が等しいかどうかの検査は避けなければなりません。 値が等しいはずの浮動小数点数でも、丸めの問題により、必ず等しくなるとは限りません。

誤った例
 void calc(double limit) {
     if (limit == 0.0) {
         ...
     }
  }
正しい例
 const double EPS = 0.00001;
  
  void calc(double limit) {
     if (abs(limit) < EPS) {
         ...
     }
  }

関連項目