abs, labs, llabs, imaxabs
From cppreference.com
| ヘッダー <stdlib.h> で定義 |
||
| int abs( int n ); |
||
| long labs( long n ); |
||
| long long llabs( long long n ); |
(C99以降) | |
| ヘッダ <inttypes.h> で定義 |
||
| (C99以降) | ||
整数の絶対値を計算します。戻り値の型で表現できない場合、動作は未定義です。
目次 |
[編集] パラメーター
| n | - | 整数値 |
[編集] 戻り値
n の絶対値(すなわち |n|)。ただし、表現可能な場合。
[編集] 注釈
2の補数システムでは、最も負の値の絶対値は範囲外となります。例えば、32ビット2の補数型intの場合、INT_MINは-2147483648ですが、その絶対値である2147483648はINT_MAX(2147483647)よりも大きいため、範囲外となります。
[編集] 例
このコードを実行
出力
abs(+3) = 3 abs(-3) = 3
[編集] 参考文献
- C23標準 (ISO/IEC 9899:2024)
- 7.8.2.1 imaxabs 関数 (p: TBD)
- 7.22.6.1 abs, labs, llabs 関数 (p: TBD)
- C17標準 (ISO/IEC 9899:2018)
- 7.8.2.1 imaxabs 関数 (p: 159)
- 7.22.6.1 abs, labs, llabs 関数 (p: 259)
- C11標準 (ISO/IEC 9899:2011)
- 7.8.2.1 imaxabs 関数 (p: 218)
- 7.22.6.1 abs, labs, llabs 関数 (p: 356)
- C99標準 (ISO/IEC 9899:1999)
- 7.8.2.1 imaxabs 関数 (p: 199-200)
- 7.20.6.1 abs, labs, llabs 関数 (p: 320)
- C89/C90標準 (ISO/IEC 9899:1990)
- 4.10.6.1 abs 関数
- 4.10.6.3 labs 関数
[編集] 関連項目
| (C99)(C99) |
浮動小数点値の絶対値を計算する (|x|) (関数) |
| (C99)(C99)(C99) |
複素数の絶対値を計算する (関数) |
| C++ ドキュメント (abs)
| |