Manpages

名 前

abs, labs, llabs, 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 に 含 ま れ る よ う に な っ た 。 imaxabs() 関 数 は バ ー ジ ョ ン 2.1.1 か ら glibc に 含 ま れ る よ う に な っ た 。

llabs() が 宣 言 さ れ る た め に は 、 標 準 ヘ ッ ダ ー を include す る 前 に _ISOC99_SOURCE_ISOC9X_SOURCE(ど ち ら か は glibc の バ ー ジ ョ ン に 依 存 す る )を define し て お く 必 要 が あ る 。 デ フ ォ ル ト で 、 GCC は abs(), labs() お よ び (GCC 3.0 以 降 で は ) llabs() と imaxabs() を ビ ル ド イ ン 関 数 と し て 扱 う 。

関 連 項 目

cabs(3), ceil(3), fabs(3), floor(3), rint(3)

こ の 文 書 に つ い て

こ の man ペ ー ジ は Linux man−pages プ ロ ジ ェ ク ト の リ リ ー ス 3.79 の 一 部 で あ る 。 プ ロ ジ ェ ク ト の 説 明 と バ グ 報 告 に 関 す る 情 報 は http://www.kernel.org/doc/man−pages/ に 書 か れ て い る 。