# ABS

NAME

SYNOPSIS

DESCRIPTION

RETURN VALUE

ATTRIBUTES

CONFORMING TO

NOTES

SEE ALSO

COLOPHON

## 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**():

_ISOC99_SOURCE ||
_POSIX_C_SOURCE >= 200112L

## 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.

## ATTRIBUTES

For an
explanation of the terms used in this section, see
**attributes**(7).

## CONFORMING TO

POSIX.1-2001,
POSIX.1-2008, C99, SVr4, 4.3BSD. 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. 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.

By default, GCC
handles **abs**(), **labs**(), and (since GCC 3.0)
**llabs**() and **imaxabs**() as built-in
functions.

## SEE ALSO

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

## COLOPHON

This page is
part of release 4.15 of the Linux *man-pages* project.
A description of the project, information about reporting
bugs, and the latest version of this page, can be found at
https://www.kernel.org/doc/man-pages/.