abs(3)

NAME
abs, labs, llabs, imaxabs, uabs, ulabs, ullabs, uimaxabs - compute the absolute value of an integer

LIBRARY
Standard C library (libc, -lc)

SYNOPSIS
#include <stdlib.h>

int abs(int j);
long labs(long j);
long long llabs(long long j);

unsigned int uabs(int j);
unsigned long ulabs(long j);
unsigned long long ullabs(long long j);

#include <inttypes.h>

intmax_t imaxabs(intmax_t j);
uintmax_t uimaxabs(intmax_t j);

    Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

llabs():
    _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

uabs(), ulabs(), ullabs(), uimaxabs():
    _ISOC2Y_SOURCE

DESCRIPTION
These 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).
Interface | Attribute | Value
 | Thread safety | MT-Safe

STANDARDS

abs()
labs()
llabs()
imaxabs()
    C23, POSIX.1-2024

HISTORY

abs()
    C89, POSIX.1-1996, SVr4, 4.3BSD.

labs()
    C89, POSIX.1-2001.

llabs()
    C99, POSIX.1-2001; glibc 2.0.

imaxabs()
    C99, POSIX.1-2001; glibc 2.1.1.

uabs()
ulabs()
ullabs()
uimaxabs()
    C2y; glibc 2.42.

BUGS
For abs(), labs(), llabs(), and imaxabs(), trying to take the absolute value of the most negative integer is not defined.

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