fabs, fabsf, fabsl, fabsd32, fabsd64, fabsd128
From cppreference.com
| ヘッダー <math.h> で定義 |
||
| float fabsf( float arg ); |
(1) | (C99以降) |
| double fabs( double arg ); |
(2) | |
| long double fabsl( long double arg ); |
(3) | (C99以降) |
| _Decimal32 fabsd32( _Decimal32 arg ); |
(4) | (C23以降) |
| _Decimal64 fabsd64( _Decimal64 arg ); |
(5) | (C23以降) |
| _Decimal128 fabsd128( _Decimal128 arg ); |
(6) | (C23以降) |
| ヘッダー <tgmath.h> で定義 |
||
| #define fabs( arith ) |
(7) | (C99以降) |
1-6) 引数argの浮動小数点数の絶対値を計算します。
|
10進浮動小数点数パラメータを持つ関数は、実装が |
(C23以降) |
7) 型汎用マクロ:引数の型が_Decimal128, _Decimal64, _Decimal32,(C23 以降)long double, double, または float の場合、それぞれ
fabsd128, fabsd64, fabsd32,(C23 以降)fabsl, fabs, または fabsf が呼び出されます。それ以外の場合で、引数が整数型の場合、fabsが呼び出されます。それ以外の場合で、引数が複素数の場合、マクロは対応する複素数関数(cabsf, cabs, cabsl)を呼び出します。それ以外の場合、動作は未定義です。目次 |
[編集] パラメータ
| arg | - | floating-point value |
| arith | - | 浮動小数点数または整数値 |
[編集] 戻り値
成功した場合、引数argの絶対値(|arg|)を返します。返される値は正確であり、丸めモードには依存しません。
[編集] エラー処理
この関数は、math_errhandlingで指定されたエラー条件のいずれにも該当しません。
実装がIEEE浮動小数点算術 (IEC 60559) をサポートしている場合、
- 引数が±0の場合、+0が返されます。
- 引数が ±∞ の場合、+∞ が返されます。
- 引数が NaN の場合、NaN が返されます。
[編集] 例
このコードを実行
#include <math.h> #include <stdio.h> #define PI 3.14159 // This numerical integration assumes all area is positive. double integrate(double f(double), double a, double b, // assume a < b unsigned steps) // assume steps > 0 { const double dx = (b - a) / steps; double sum = 0.0; for (double x = a; x < b; x += dx) sum += fabs(f(x)); return dx * sum; } int main(void) { printf("fabs(+3) = %f\n", fabs(+3.0)); printf("fabs(-3) = %f\n", fabs(-3.0)); // special values printf("fabs(-0) = %f\n", fabs(-0.0)); printf("fabs(-Inf) = %f\n", fabs(-INFINITY)); printf("Area under sin(x) in [-PI, PI] = %f\n", integrate(sin, -PI, PI, 5101)); }
出力
fabs(+3) = 3.000000 fabs(-3) = 3.000000 fabs(-0) = 0.000000 fabs(-Inf) = inf Area under sin(x) in [-PI, PI] = 4.000000
[編集] 参照
- C23標準 (ISO/IEC 9899:2024)
- 7.12.7.2 The fabs functions (p: TBD)
- 7.25 Type-generic math <tgmath.h> (p: TBD)
- F.10.4.2 The fabs functions (p: TBD)
- C17標準 (ISO/IEC 9899:2018)
- 7.12.7.2 The fabs functions (p: 181)
- 7.25 型総称数学関数 <tgmath.h> (p: 272-273)
- F.10.4.2 The fabs functions (p: 382)
- C11標準 (ISO/IEC 9899:2011)
- 7.12.7.2 The fabs functions (p: 248)
- 7.25 型総称数学関数 <tgmath.h> (p: 373-375)
- F.10.4.2 The fabs functions (p: 524)
- C99標準 (ISO/IEC 9899:1999)
- 7.12.7.2 The fabs functions (p: 228-229)
- 7.22 型総称数学関数 <tgmath.h> (p: 335-337)
- F.9.4.2 The fabs functions (p: 460)
- C89/C90標準 (ISO/IEC 9899:1990)
- 4.5.6.2 The fabs function
[編集] 関連項目
| (C99) |
整数値の絶対値を計算する (|x|) (関数) |
| (C99)(C99)(C99) |
与えられた値の絶対値と別の与えられた値の符号を持つ値を生成する (関数) |
| (C99) |
与えられた数値が負数かチェックする (関数マクロ) |
| (C99)(C99)(C99) |
複素数の絶対値を計算する (関数) |
| C++ ドキュメント for fabs
| |