round() を使用した C の浮動小数点数の丸め
標準 C ライブラリに専用のround() 関数がない場合、開発者は ceil() や Floor() などの他の関数に頼ることがよくあります。ただし、精度を制御するには、多くの場合、特定の丸め関数が必要になります。
カスタムround() 関数の実装
round() 関数は、浮動小数点数を丸めます。 「四捨五入」ルールに基づいており、整数間のちょうど中間の数値が切り上げられます。次の C コードは、この関数の実装を提供します。
double round(double d) { return floor(d + 0.5); }
この実装は基本的に数値に 0.5 を加算し、floor() 関数を使用して結果を最も近い整数に切り捨てます。
その他の四捨五入方法
「四捨五入」ルールが一般的に使用されますが、
これらのメソッドの実装は、オンラインで見つけることも、特定の仕様に基づいてカスタム作成することもできます。
注:
C 11 標準では、組み込みのround() 関数 (std::round、std::lround、および std::llround) が導入されました。 ) 同様の機能を提供するため、最新のコンパイラや標準ライブラリではカスタム実装が不要になります。
以上がC で丸め関数を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。