Other Alias
abs, labs, imaxabs書式
#include <stdlib.h>
int abs(int j);
long int labs(long int j);
long long int llabs(long long int j);
#include <inttypes.h>
intmax_t imaxabs(intmax_t j);
glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):
llabs():
-
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99
説明
abs() 関数は、整数の引数 j の絶対値を計算する。 labs(), llabs(), imaxabs() 関数は、 それぞれの関数の型に応じた引数 j の絶対値を計算する。返り値
それぞれの関数の型に応じた整数の引数の絶対値を返す。属性
マルチスレッディング (pthreads(7) 参照)
関数 abs(), labs(), llabs(), imaxabs() はスレッドセーフである。準拠
SVr4, POSIX.1-2001, 4.3BSD, C99. C89 は abs() 関数と labs() 関数のみを含んでいる。 llabs() 関数と imaxabs() 関数は C99 で追加された。注意
最大の負整数の絶対値は、定義されていない。llabs() 関数はバージョン 2.0 から glibc に含まれるようになったが、 libc5 や libc4 にはない。 imaxabs() 関数は バージョン 2.1.1 から glibc に含まれるようになった。
llabs() が宣言されるためには、標準ヘッダを include する前に _ISOC99_SOURCE か _ISOC9X_SOURCE(どちらかは glibc の バージョンに依存する)を define しておく必要がある。
GCC は abs() と labs() をビルドイン関数として扱う。 GCC 3.0 は llabs() と imaxabs() もビルドインとして扱う。
この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.65 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。