ABS
Section: Linux Programmer's Manual (3)
Updated: 2007-07-26
Index
Return to Main Contents
NAME
abs, labs, llabs, imaxabs - compute the absolute value of an integer
SYNOPSIS
#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);
Feature Test Macro Requirements for glibc (see
feature_test_macros(7)):
llabs():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE; or
cc -std=c99
DESCRIPTION
The
abs()
function computes the absolute value of the integer
argument j.
The
labs(),
llabs()
and
imaxabs()
functions compute the absolute value of the argument j of the
appropriate integer type for the function.
RETURN VALUE
Returns the absolute value of the integer argument, of the appropriate
integer type for the function.
CONFORMING TO
SVr4, POSIX.1-2001, 4.3BSD, C99.
C89 only
includes the
abs()
and
labs()
functions; the functions
llabs()
and
imaxabs()
were added in C99.
NOTES
Trying to take the absolute value of the most negative integer
is not defined.
The
llabs()
function is included in glibc since version 2.0, but
is not in libc5 or libc4.
The
imaxabs()
function is included in
glibc since version 2.1.1.
For
llabs()
to be declared, it may be necessary to define
_ISOC99_SOURCE or _ISOC9X_SOURCE (depending on the
version of glibc) before including any standard headers.
GCC handles
abs()
and
labs()
as built-in functions.
GCC 3.0 also handles
llabs()
and
imaxabs()
as built-ins.
SEE ALSO
cabs(3),
ceil(3),
fabs(3),
floor(3),
rint(3)
COLOPHON
This page is part of release 3.22 of the Linux
man-pages
project.
A description of the project,
and information about reporting bugs,
can be found at
http://www.kernel.org/doc/man-pages/.