std::abs(float), std::fabs, std::fabsf, std::fabsl
提供: cppreference.com
<tbody>
</tbody>
<tbody class="t-dcl-rev t-dcl-rev-num ">
</tbody><tbody>
</tbody>
<tbody class="t-dcl-rev t-dcl-rev-num ">
</tbody><tbody>
</tbody>
| ヘッダ <cmath> で定義
|
||
| ヘッダ <cstdlib> で定義
|
(C++17以上) |
|
float abs( float arg ); |
(1) | |
double abs( double arg ); |
(2) | |
long double abs( long double arg ); |
(3) | |
| ヘッダ <cmath> で定義
|
||
| (4) | ||
float fabs ( float arg ); |
||
float fabsf( float arg ); |
(C++11以上) | |
double fabs ( double arg ); |
(5) | |
| (6) | ||
long double fabs ( long double arg ); |
||
long double fabsl( long double arg ); |
(C++11以上) | |
double fabs ( 整数型 arg ); |
(7) | (C++11以上) |
1-6) 浮動小数点値
arg の絶対値を計算します。|
整数引数に対しては、 |
(C++17以上) |
引数
| arg | - | 浮動小数点または整数型の値 |
戻り値
成功した場合、 arg の絶対値 (|arg|) を返します。 返された値は正確であり、いかなる丸めモードにも依存しません。
エラー処理
この関数は math_errhandling で規定されているいかなるエラー状況の対象でもありません。
処理系が IEEE 浮動小数点算術 (IEC 60559) をサポートしている場合、
- 引数が ±0 であれば、 +0 が返されます。
- 引数が ±∞ であれば、 +∞ が返されます。
- 引数が NaN であれば、 NaN が返されます。
例
Run this code
#include <iostream>
#include <cmath>
int main()
{
std::cout << "abs(+3.0) = " << std::abs(+3.0) << '\n'
<< "abs(-3.0) = " << std::abs(-3.0) << '\n';
// special values
std::cout << "abs(-0.0) = " << std::abs(-0.0) << '\n'
<< "abs(-Inf) = " << std::abs(-INFINITY) << '\n';
}
出力例:
abs(+3.0) = 3
abs(-3.0) = 3
abs(-0.0) = 0
abs(-Inf) = inf
欠陥報告
以下の動作変更欠陥報告は以前に発行された C++ 標準に遡って適用されました。
| DR | 適用先 | 発行時の動作 | 正しい動作 |
|---|---|---|---|
| LWG 2735 | C++11 | std::abs was erroneously required to have overloads for integer types returning double
|
removed the requirement |
関連項目
(C++11) |
整数値の絶対値 (|x|) を計算します (関数) |
(C++11)(C++11)(C++11) |
浮動小数点値の符号をコピーします (関数) |
(C++11) |
指定された数値が負かどうか調べます (関数) |
| 複素数の絶対値を返します (関数テンプレート) | |
valarray の各要素に関数 abs を適用します (関数テンプレート) | |
fabs の C言語リファレンス
| |