std::abs(float), std::fabs
提供: cppreference.com
ヘッダ <cmath> で定義
|
||
ヘッダ <cstdlib> で定義
|
(C++17およびそれ以降) |
|
float abs( float arg ); |
(1) | |
double abs( double arg ); |
(2) | |
long double abs( long double arg ); |
(3) | |
ヘッダ <cmath> で定義
|
||
float fabs( float arg ); |
(4) | |
double fabs( double arg ); |
(5) | |
long double fabs( long double arg ); |
(6) | |
double fabs( Integral arg ); |
(7) | (C++11およびそれ以降) |
1-6) 浮動小数点値
arg
の絶対値を計算します。7) (4-6) でカバーされない算術型の引数のすべての組み合わせに対するオーバーロード集合または関数テンプレート。 いずれかの引数が整数型を持つ場合、それは double にキャストされます。 他のいずれかの引数が long double の場合、戻り値型は long double になり、そうでなければ double になります。
整数引数に対しては、 std::abs の整数オーバーロードがより良くマッチします。 std::is_unsigned<X>::value が true であり、 X が整数拡張で int に変換できない場合、プログラムは ill-formed です。 |
(C++17およびそれ以降) |
目次 |
[編集] 引数
arg | - | 浮動小数点または整数型の値 |
[編集] 戻り値
成功した場合、 arg
の絶対値 (|arg|
) を返します。 返された値は正確であり、いかなる丸めモードにも依存しません。
[編集] エラー処理
この関数は math_errhandling で規定されているいかなるエラー状況の対象でもありません。
処理系が IEEE 浮動小数点算術 (IEC 60559) をサポートしている場合、
- 引数が ±0 であれば、 +0 が返されます。
- 引数が ±∞ であれば、 +∞ が返されます。
- 引数が NaN であれば、 NaN が返されます。
[編集] ノート
C++11 と C++14 の間で、標準は std::abs
が整数型に対して double を返すオーバーロードを持つことを誤って要求していました。 この要件は欠陥報告 2735 によって C++17 で削除されました。
[編集] 例
Run this code
出力例:
abs(+3.0) = 3 abs(-3.0) = 3 abs(-0.0) = 0 abs(-Inf) = inf
[編集] 関連項目
(C++11) |
整数値の絶対値 (|x|) を計算します (関数) |
(C++11) |
浮動小数点値の符号をコピーします (関数) |
(C++11) |
指定された数値が負かどうか調べます (関数) |
複素数の絶対値を返します (関数テンプレート) | |
valarray の各要素に関数 std::abs を適用します (関数テンプレート) | |
fabs の C言語リファレンス
|