Scroll to navigation

abs(3) Library Functions Manual 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
abs (), labs (), llabs (), imaxabs (), uabs (), ulabs (), ullabs (), uimaxabs () Thread safety MT-Safe

STANDARDS

C23, POSIX.1-2024

HISTORY

C89, POSIX.1-1996, SVr4, 4.3BSD.
C89, POSIX.1-2001.
C99, POSIX.1-2001; glibc 2.0.
C99, POSIX.1-2001; glibc 2.1.1.
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)

2025-05-06 Linux man-pages (unreleased)