#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; または cc -std=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() もビルドインとして扱う。